jump to navigation

Forum June 29, 2008

Posted by genetical in General Information.
Tags: , ,
add a comment

I’ll append any other actual helpful forums that I find as I come across them. For now, you can find the official boinc forum here:

http://boinc.berkeley.edu/dev/index.php

There is also a FAQ with a list of BOINC terminology and explanation of common errors (along with other things) here:

http://boincfaq.mundayweb.com/index.php

Generating work on BOINC June 27, 2008

Posted by genetical in boinc.
Tags: , , , , ,
2 comments

To generate workunits, there are a few commands you must run from the project root directory (in this case: /var/lib/boinc/suboinc/). First you must move your input file to its proper location as determined by BOINC’s hashing protocol. Execute this command as super user or the boinc user (boinc user preferred – Tommy, is this all set up and ready to go?):

# cp [INFILE LOCATION AND NAME] `bin/dir_hier_path [INFILE NAME]`

For example,

# cp apps/uppercase/in-uc_LIN `bin dir_hier_path in-uc_LIN`

This moves your input file to its proper location. Now you must create your workunit:

# bin/create_work -appname [APP NAME FROM "apps" FOLDER] -wu_name [CHOOSE YOUR WORKUNIT NAME] -wu_template templates/wu_generic -result_template templates/result_generic [INFILE NAME]

For example,

# bin/create_work -appname uppercase -wu_name uc_nodelete -wu_template templates/wu_generic -result_template template/result_generic in-uc_LIN

Note, the “_nodelete” flag makes sure that file_deleter and db_purge do not remove this file, which is important if you want to use the make_work function to generate mass amounts of the same workunit for testing (done from “bin“):

# ./make_work -wu_name uc_nodelete -cushion 100 -max_wus 1000

The cushion defines how many workunits are kept in the queue at any time until the max number of workunits, 1000, is reached.

You can add this as a daemon that runs with BOINC by editing the “config.xml” file with something like:

<daemon>

<cmd>

make_work -d 3 -wu_name uc_nodelete -cushion 100 -max_wus 99999

</cmd>

</daemon>

The “-d 3” option sets it to run as a daemon and at the debug level (3). This should be listed amongst the rest of the daemons in the config file.

More “useful” reading can be found here.

-Chris

BOINC settings for lab computers on campus June 27, 2008

Posted by genetical in boinc.
Tags: , , ,
add a comment

The following picture is a screenshot of the settings I have decided to use for testing lab computers on campus with the BOINC client for ITS:

http://buzz.southwestern.edu/~elliott3/boinc%20settings.JPG

-Chris

How to: Building PC Binaries for Boinc (C/C++) June 19, 2008

Posted by genetical in Techincal Support, boinc.
Tags: , , , , ,
1 comment so far

This first paragraph’s steps are necessary in full if you have no previously installed libraries, otherwise, only some of these steps may be necessary based on your computer’s preexisting libraries. After obtaining and installing Visual Studio 9.0 Professional Edition from Microsoft’s website (90-day trial recommended, do a full install that includes the .NET 3.5 Framework), I had to download Microsoft’s latest SDK here, as well as the Feature Pack, followed by a rollback to Microsoft’s old SDK, found here. Even at this point, two more header files must be downloaded and added to Visual Studio’s “./VC/include/” folder: “version.h” and “config.h“. Just google them and copy the code into notepad, saving them with their respective file names (save as “All Files” and not as “*.txt“!) in the aforementioned include folder.

Using an SVN client, such as Tortoise, I downloaded both the” /boinc” and “/boinc_samples” repositories located at “http://boinc.berkeley.edu/svn/trunk/“. Make sure both folders share the same parent directory.

This site, which describes how to build an app for Boinc, recommends you also install Microsoft’s debugging tools, here.

Once all of this is completed, go to “./boinc_samples/win_build/” and open “samples“. All projects must be updated to exclude the “glaux.lib” library and you must append “kernel32.lib user32.lib gdi32.lib advapi32.lib” to the list of additional dependencies found in Project->References->Linker->Input. This is because the newest version of Microsoft’s SDK deprecated the glaux library into 4 separate libraries – apparently it’s more stable now.

One other change must be made:in line 191 of “stackwalker_win.cpp“, which can be found in the “libboinc” project under “source files”, change “LPSTR” to “PCSTR” so that the line reads:

BOOL CALLBACK SymEnumerateModulesProc(PCSTR /* ModuleName */, DWORD64 BaseOfDll, PVOID /* UserContext */)

Now you should be ready to build the entire solution. You can select whether you want to build debug or release versions for either 32- or 64-bit platforms, or you can do a batch build which allows you to do multiple builds. Once this is done the binaries are made but you must create a “job.xml” file before you can run your executable, otherwise it will not read your input file properly.

The “job.xml” template as well and instructions for it can be found here. Be sure to have this file in the same directory as your binary and input file.

-Chris

Basic Puppy/Boinc setup (post-OS-install) May 28, 2008

Posted by genetical in boinc, puppy.
Tags: , , , ,
add a comment

The following tutorial explains the step-by-step instructions on how to get network connectivity up and running (on SU campus) on Puppy after the OS has been installed. Followed by the step-by-step explanation on how to point the Boinc client to a server and have the Boinc client startup automatically (and connect to specified server) each time Puppy boots.

Network connectivity:

  1. From the desktop, click ‘Connect’
  2. Click “Connect to Internet by network interface”
  3. Select ‘eth0′ //why does this format my zero to look like an ‘oh’???? grr
  4. Select “Auto DHCP”
  5. Wait…
  6. ‘Yes’ (saves settings for subsequent boots)
  7. ‘Done’

Setup Boinc client:

  1. Open a browser window and go to http://boinc.berkeley.edu/download.php
  2. Download the file to /root/my-documents
  3. Open the console
  4. # cd ./my-documents
  5. # chmod +x [saved-filename]
  6. # ./[saved-filename]
  7. # cd ./BOINC/
  8. # ln ./run_manager /root/Startup
  9. # ./run_manager
  10. Once Boinc opens up, enter in the information for the server to which you wish to connect.

Next time you boot, the computer should open up Boinc automatically and connect to the server you set up.

-Chris