Please consider a donation to the Higher Intellect project. See https://preterhuman.net/donate.php or the Donate to Higher Intellect page for more info. |
BOINC install and configuration
BOINC (Berkeley Open Infrastructure for Network Computing ) is an open-source software platform for computing using volunteered resources.
Installing Boinc
Download and install the BOINC Client tardist from the Nekoware repository. http://www.mechanics.citg.tudelft.nl/~everdij/nekoware/current/neko_boinc_client-5.4.9.tardist
The installation of the precompiled binary package is simple and straight-forward using either the Software Manager or inst. In the case of inst, it's a simple command:
inst -f /path/to/neko_boinc_client-5.4.9.tardist install all keep *.opt.src go quit
You will need "root" privileges to install the software. The whole application will be installed into a single directory which is located in /usr/nekoware/boinc. As a side note: keep notice that this program is compiled with the gcc compiler and not with the mips pro compiler and hence cannot be optimized for the target hardware.
Installing Setiathome enhanced
For installing the seti client software you have to follow the same instruction as for the boinc client
inst -f /path/to/setiathome_enhanced-5.12.tardist install all keep *.opt.src go quit
Most important files are installed into the /project directory of the boinc application. You can install both packages at once. IRIX isn't a supported platform for SETI@home anymore. This is the reason why the neko_setiathome_enhanced comes with a app_info.xml file which is located under /usr/nekoware/boinc/projects/setiathome.berkeley.edu . The content describes an anonymous platform.
<app_info> <app> <name>setiathome_enhanced</name> </app> <file_info> <name>setiathome-5.12.mips-sgi-irix</name> <executable/> </file_info> <app_version> <app_name>setiathome_enhanced</app_name> <version_num>512</version_num> <file_ref> <file_name>setiathome-5.12.mips-sgi-irix</file_name> <main_program/> </file_ref> </app_version> </app_info>
When using the anonymous platform, an automatic update for the project client isn't possible. This is important to know for projects like Einstein@Home where the client changes every month, if not every week.
Package Dependencies
The following packages are needed to run the software properly.
neko_openssl neko_curl neko_libiconv neko_libidn neko_zlib
Account
At First you have to sign up for a account on the SETI@home homepage. Please visit http://setiathome.berkeley.edu/create_account_form.php . A working E-Mail account is needed for that task. The most important thing you have to remember is the project URL and your private authenticator. The last one looks like a md5 hash.
Check if you have the app_info.xml located into the project directory and the client which is named setiathome-5.12.mips-sgi-irix. Both files have to be located into /usr/nekoware/boinc/projects/setiathome.berkeley.edu
Register the project
Each project have to register to the already installed boinc software. To register the seti@home project you have to run to following command.
su - <YOUR_USER> cd /usr/nekoware/boinc ./boinc_client -attach_project http://setiathome.berkeley.edu <authenticator>
The boinc client starts automatically and will run some benchmarks. In the background a lot of files are created. The file account_setiathome.berkeley.edu.xml holds your account information and the authenticator. The authenticator can be used to login in into your SETI project page under http://setiathome.berkeley.edu/home.php
[---] Starting BOINC client version 5.4.9 for mips-sgi-irix [---] libcurl/7.15.0 OpenSSL/0.9.7m zlib/1.2.3 libidn/0.5.4 [---] Data directory: /usr/nekoware/boinc [---] Processor: 32 Silicon Graphics, Inc. IP35 [---] Memory: 3.00 GB physical, 1.00 GB virtual [---] Disk: 134.79 GB total, 98.51 GB free [1] URL: http://setiathome.berkeley.edu/; Computer ID: not assigned yet; location: ; project prefs: default [---] No general preferences found - using BOINC defaults [---] Local control only allowed [---] Listening on port 31416 [---] Suspending network activity - running CPU benchmarks [---] Running CPU benchmarks [---] Benchmark results: [---] Number of CPUs: 16 [---] 650 floating point MIPS (Whetstone) per CPU [---] 815 integer MIPS (Dhrystone) per CPU [---] Finished CPU benchmarks [---] Resuming computation [---] Rescheduling CPU: Resuming computation [---] Resuming network activity [2] Scheduler list download succeeded [3] Sending scheduler request to http://setiboinc.ssl.berkeley.edu/sah_cgi/cgi [4] Reason: Requested by user [5] Requesting 138240 seconds of new work [6] Scheduler request succeeded [SETI@home] Message from server: platform 'mips-sgi-irix' not found [SETI@home] New host venue: work [SETI@home] Successfully attached to SETI@home
After you see the "Successfully attached" message press ctrl+c to abort the process. When starting the client the first time there is a 24h timeout before number crunching starts or to be more precise the downloading starts. To work around this issue edit 'client_state.xml' file and remove the unix timestamp for the min_rpc_time entry and start the client again.
Note: The hardware detection from the boinc client doesn't detect the right amount of memory. Don't worry about that.
Running Boinc 'First Time'
./boinc_client
Take care to the following lines
[SETI@home] Found app_info.xml; using anonymous platform .. [SETI@home] Reason: To fetch work [SETI@home] Requesting 138240 seconds of new work [SETI@home] Scheduler request succeeded .. [SETI@home] Starting task 18mr07aa.xxxxx.xxxxx.x.x.x_x using setiathome_enhanced version 512
Use the programm 'top' to check if the crunsher is still working
IRIX64 o3k 6.5 IP35 load averages: 20,80 17,17 14,07 124 processes: 113 sleeping, 11 running 32 CPUs: 31,1% idle, 68,8% usr, 0,1% ker, 0,0% wait, 0,0% xbrk, 0,0% intr Memory: 15G max, 14G avail, 11G free, 1024M swap, 1024M free swap PID PGRP USERNAME PRI SIZE RES STATE TIME WCPU% CPU% COMMAND 1093979 1104170 root +1 68M 66M sleep 1:04 99,9 99,92 setiath 1105097 1104170 root +1 68M 66M sleep 3:45 99,9 99,92 setiath 1102567 1104170 root +1 68M 66M sleep 1:26 99,9 99,92 setiath
In this case boinc was started as user root which isn't a good idea. So perform a
chown -R <username> /usr/nekoware/boinc/* su - <YOUR_USER> cd /usr/nekoware/boinc/
to change the ownerships of all the files. Otherwise start the register task with your user account and be be sure that you have write access to the boinc directory.
Running Boinc 'regular'
Instead of running as a standard task it makes more sense to start boinc as a weightless background task. In this case it uses only spare CPU cycles for crunching and don't prevent your desktop or other important jobs. If you don't like that your shell is blocked you consider the use of screen
screen -R boinc cd /usr/nekoware/bionc npri -w ./boinc_client -return_results_immediately
The npri call modify the scheduling and priority of the process. Press 'ctrl+ad' to detach from the shell and use 'screen -R boinc' again for attaching back. This will also works when you logout from your desktop or drop the ssh connection and come back later.
IRIX64 o3k 6.5 IP35 load averages: 0,05 0,08 2,81 139 processes: 128 sleeping, 11 running 32 CPUs: 0,0% idle, 99,9% usr, 0,1% ker, 0,0% wait, 0,0% xbrk, 0,0% intr Memory: 15G max, 14G avail, 10G free, 1024M swap, 1024M free swap PID PGRP USERNAME PRI SIZE RES STATE TIME WCPU% CPU% COMMAND 1105186 1105547 beh +1 68M 64M sleep 0:35 97,3 99,96 setiath 1105504 1105547 beh +1 68M 65M sleep 0:35 97,5 97,62 setiath 1104744 1105547 beh +1 68M 65M sleep 0:35 97,7 97,33 setiath
As you can see there is no load anymore and the state is marked as 'sleep' with a prio +1. But the process uses 99.96 from the CPU. If you don't want to use screen there is another simple program which can helps.
nohup npri -w ./boinc_client -return_results_immediately >> boinc.log
Now you can use tail -f boinc.log to see whats going on and you can use the shell for other tasks.
Join the TEAM
Pete (aka Nekonoko) has created a "Team Nekochan"; please feel free to join the club :)
Use your Seti Account for joining a team. The Team page can be found under: http://setiathome.berkeley.edu/team_display.php?teamid=116297