Skip to content

Developing and deploying apps

David Anderson edited this page May 12, 2026 · 6 revisions

Client runtime environment

The BOINC client runs apps in a particular way. Each job runs in its own directory; its input and output files either reside in that directory, or are linked to a 'project directory' where jobs can share files. The app communicates with the BOINC client by sending messages via shared memory.

The runtime environment is described here. You don't need to know the details but you should understand the basic ideas.

Tools

Native apps

A native app is one that uses the runtime system directly. You need to make minor modifications to the source code, compile it with BOINC header files, and link it with the BOINC runtime library.

Wrappers

'Wrappers' let you run existing executables under BOINC.

Multicore applications

GPU applications

Adding graphics

Specialized application types

Languages other than C/C++

Low-level APIs

Building applications

Debugging applications

Beta-testing applications

Customizing the scheduler

Clone this wiki locally