- Simple scenarios
- Complex scenarios
- Bridging scenarios
<WRAP important> NOTE: See the GBAC manual for in depth information about usage, download links and installation. </WRAP>
The Generic BOINC Application Client (GBAC) is a virtualization enabled wrapper application. Beyond its name GBAC also represents a generic framework providing virtualized environments for various distributed computing infrastructures (DCIs). GBAC was implemented using the DC-API Meta API and does not rely on any middleware specific functionalities, thus it is possible to use it on any DCIs that are supported by DC-API, currently BOINC, Condor and XtremWeb.
The following subsections detail the internals of GBAC to give an overview. GBAC wrapper consists of three components: (a) the wrapper binary (see 1. in the figure below) itself is a BOINC enabled DC-API application that contains all BOINC related parts and handles communication with the BOINC client. Its task is to set up the client execution environment and manage the virtual machine on the client machine; (b) a configuration file (see 2. in the figure below) is used to set the different parameters for the virtual machine: (i) the operating system type (e.g., Linux 64bit); (ii) the size of the allocated memory for the virtual machine; (iii) whether the machine should have network access; (iv) which virtual appliance to use; and (v) whether to enable a shared directory between the host and the guest (the virtual machine). The configuration file is detailed in Section Configuration file; finally © a virtual appliance (see 3. in Figure below) that contains the operating systems, libraries and GBAC guest extensions (detailed in Section GBAC Guest Extensions) for the virtual machine. We provide a 32bit Linux VA with the GBAC guest extensions installed (see Section Downloading GBAC), but it is also possible to create custom ones.
These three components are deployed at the BOINC server as the GBAC Application. The legacy application binaries and inputs (see 4. and 5. in the figure above) are input files for this application and need to be specified for each work unit. It is possible to bundle the legacy application binaries into a single file, see Section sec:appbundle for more details.
First a legacy application with its inputs is submitted via the 3G Bridge to BOINC (see 1. and 2. in the figure below) and it is transformed into a GBAC application work unit containing the binaries and input files of the legacy application as inputs of the GBAC application. When a BOINC client connects, from a host where VirtualBox is installed, to the BOINC server and asks for tasks, it receives the work unit containing the GBAC application with its inputs. The BOINC client first downloads the GBAC binary, its configuration file and the vir