BOINC provides several example applications in the boinc/samples/ directory. See the instructions for building BOINC applications.
The example applications are:
- example_app: a example single-thread native BOINC application. The application does things (like checkpointing and graphics) that can be tricky or confusing. You can use it as a template for your own BOINC application; just rip out the computation part (which is trivial) and replace it with your code.
You can run the application standalone. Create a file 'in' in the directory where you run it; it will convert it to upper case and write it to 'out', and use 20 seconds of CPU time. You can also run the graphics app standalone; it will show a bouncing 3D ball. If you copy the files boinc/txf/Helvetica.txf and boinc/samples/uppercase/logo.jpg to the directory where it runs, you'll also see an image and some text.
- multi_thread: an example multi-thread application.
- atiopencl: an OpenCL application for ATI GPUs
- nvcuda: a CUDA application for NVIDIA GPUs.
- nvopencl: an OpenCL application for NVIDIA GPUs.
There are also some "wrappers" that interface existing applications to BOINC:
- wrapper: the BOINC wrapper.
- vboxwrapper: a wrapper for applications that run in virtual machines
- wrappture: a wrapper for Rappture applications
... and a couple of test applications:
- worker: a representative legacy application (i.e. it doesn't use the BOINC API or runtime library). Used for testing the wrapper.
- sleeper: test application for non-CPU-intensive projects (used for testing the BOINC client).