Remote execution through BOINC with Debian dependencies
Mentor: ?HajoKrabbenhoeft helped by SteffenMoeller
Summary: Allow BOINC (and other) projects to execute arbitrary binaries that ship with Debian
Required skills:
- good reading and writing skills
- strong interest in scientific computing
Description: BOINC stands for the Berkeley Open Infrastructure for Network Computing. Co-maintained with Ubuntu developers Debian offers a readily usable package for the BOINC client since several years. Another GSoC project has its focus on bringing the server side to Debian [1,2]. This project instead focuses on the scientific applications. This shall address several major challenges in distributed computing environments:
- formal description on dependencies for a job to run
We have that since Debian has exact names and versions for each of its packages.
- homogeneous environments for their jobs
Debian is a Universal Operating System and most homogeneous, even across hardware platforms
- minimal manual labor for the maintenance required for individual jobs
Debian has build daemons since its infancy. In terms of flexibility this turns out to be more than (in a pre-cloud environment) traditional high-performance computing infrastructures are capable to provide. In principle the build daemons could be instructed to execute arbitrary scientific work if there was a respective instruction in debian/rules.
- build the scientific application on platforms that are not to their own disposal
- distribute it
- check for/communicate installed/installable Debian packages
- perform the installation of missing packages
Challenges:
- formal description on dependencies for a job to run
Applications: