BOINC install and configuration

From Nekochan
Revision as of 07:22, 14 October 2007 by Joerg (Talk | contribs) (Register the project)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

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.

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

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

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/ . The content describes an anonymous platform.


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.



At First you have to sign up for a account on the SETI@home homepage. Please visit . 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/

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 <authenticator>

The boinc client starts automatically and will run some benchmarks. In the background a lot of files are created. The file holds your account information and the authenticator. The authenticator can be used to login in into your SETI project page under

 [---] 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:; 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
 [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'


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
    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
    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: