ComputeMode project is an Icatis product that extends an organization's Computational Grid through aggregation of unused computing resources.
For instance, ComputeMode lets a virtual cluster to be built using employees' PCs at their idle times. Practically most PCs in large companies are not used at night, on weekends, and during employee vacations, training periods or business trips.
So ComputeMode allows you to take the benefits of the powerful computation infrastructure you already have, but you are not aware of!
Another interesting use of ComputeMode is within computer classrooms, where PCs can be automatically harnessed into a virtual cluster when they are not being used (night, week-ends, holidays).
ComputeMode relies on a ComputeMode Server that keeps track of the availability of some dedicated PCs on the local network. Each PC Owner has a weekly availability Schedule, identifying periods when he or she is not using his/her PC. For instance, a PC owner can declare working periods from 8:00 to 18:00, Monday to Friday.
In the remainder of this document, we will refer to PCs handled by ComputeMode as Processing Nodes.
The ComputeMode Administrator can easily manage the computing PCs through a Web-based interface, accessed through the ComputeMode Server.
A Grid User can submit some computational Jobs to the system through the use of a classical Batch Manager (also called "Job Management System", "Distributed Resource Managers", or "Queuing System").
The Grid User can log onto the Batch Manager from any machine of the local network (usually through the "ssh" secure shell). The Batch Manager will then reserve appropriate resources for the computations, Schedule the execution of the Jobs depending on the overall load on the Computing Grid and allocate Jobs to available computing resources.
The OAR Batch Manager is installed by default with ComputeMode, even though other products such as Platform LSF, OpenPBS or Sun Grid Engine are supported by ComputeMode.
ComputeMode can monitor the load on the Batch Manager, and detect overloads. In such cases it can allocate available Processing Nodes to computational tasks.
Each Processing Node has two different operating modes:
- The User Mode, in which the machine is working in its standard way under Microsoft Windows for instance. The Owner of the machine will not even notice that his or her PC is managed as a ComputeMode Processing Node. In particular, the computational resources of the PC will not be used while in User Mode.
- The Computation Mode (this is where the name of our product comes from) is activated when the machine is in a time period where the PC is declared as "idle". In case the ComputeMode Server detects some computational peak, the PC can be remotely switched to Computation Mode. The switch from user mode is done through an automatic reboot of the machine and proceeds to a remote boot. The remote boot is handled by the ComputeMode Server with the "Preboot eXecution Environment" (PXE) protocol, which is natively available from the BIOS of PCs since 1999. While in Computation Mode, the machine is running under the Linux Operating System, and does not have any access to any local hard disk.
When the ComputeMode Server detects that some given Processing Node is no longer available for computation, it restores the machine back to its User Mode, so that the Owner will not even notice that his or her PC has been used by ComputeMode.
The submitted Jobs can take advantage of the NFS distributed file system, which is made available from the ComputeMode Server. Each Grid User has his or her own private directory and can use it for data required by the computational Jobs, as well as to retrieve the produced output files.
A specific case may happen if a PC Owner comes back and needs his or her PC while a computational Job is being processed. This can happen, for instance, if the Owner has an urgent need and comes back at night to work on his/her PC. In such a situation, the owner always has priority over the machine. Just by using the keyboard, the Owner can abort any ongoing computational activity on his/her PC, and ComputeMode will restore the machine to its User Mode in about one minute.