Condor is a freely software package that allows utilization of un-used computing resources to run users jobs. Unlike other resource managers or job schedulers, Condor is suited to provide compute power over long periods of time, for jobs that are not critical. It is particularly suited to problems where the same analysis needs to be applied to many different sets of data or simulations based on stochastic analysis (such as Monte Carlo simulations). One usage example is using Condor to take advantage of organization’s PCs during the night. Some applications which were used with Condor are modeling of electronic structures, ocean modeling etc. Condor jobs should have the following attributes:
- They are "self contained" programs
- They are statically linked executables (but DLLs can be accommodated)
- They do not require communication between programs running concurrently on different hosts
- They apply the same analysis/computation repeatedly.
Jobs may run at any time on the Condor pool of compute platforms (servers, PCs) when they are not in use but if a job is running when a user logs into a compute platform, the job will be killed and will be scheduled again later. If users do not provide their own check-pointing option, any results will be lost.
Condor is not for everyone, but if you have times where your systems are un-used, and your applications meet the above criteria, you can give it a try. The latest release of Condor is 7.7.0 (July 2011). The new release added performance statistics and of course bug fixes. More info at http://www.cs.wisc.edu/condor/.
If you use Condor, leave a note. Will be interesting to get feedback.