Differences between revisions 11 and 12
Revision 11 as of 2014-01-10 21:49:43
Size: 2561
Editor: diane
Comment:
Revision 12 as of 2014-01-10 21:54:43
Size: 2668
Editor: diane
Comment:
Deletions are marked like this. Additions are marked like this.
Line 50: Line 50:
If you have a multi-threaded application (like bowtie) or an application that starts subprosess (like tophat) you'll need to tell condor how many cpus you expect to use.

I do have an example condor submit script with a simple python process that shows how to use multiple cpus in [[http://mus.caltech.edu/~diane/condor/multicpu/|multicpu]].
If you have a multi-threaded application (like bowtie) or an application that starts subprosess (like tophat) you'll need to tell condor how many cpus you expect to use. Most of the examples in [[/Templates]] illustrate how to use the request_cpu, request_memory, and request_disk parameters. If you're running a large program you'll want to set those so condor doesn't kill your job for exceeding the capabilities of the machine you're running on.
 

Condor

There's two fundamental steps to using condor.

  1. Writing a condor submit script
  2. Submitting it with condor_submit

You should run  condor_submit my_script.condor  on pongo.cacr.caltech.edu

The other most useful Condor commands are:

  • condor_status - see what machines are running jobs
  • condor_q - see the current list of jobs waiting to run
  • condor_rm - remove a job from the queue.

technically  condor_q   only looks at the current computer, which is why we launch everything from pongo)

Writing a script

There's a fair amount of boiler-plate text that goes into a condor script. Here's close to the simplest example

universe=vanilla
executable=/usr/bin/python
output=script.output
error=script.output
log=script.log

arguments=script.py --do_that_thing
queue

the important parts are:

  • executable - what program you want to run.
  • arguments - the options to pass to the executable
  • queue - tell condor to combine the program in executable with the arguments to create something runnable.

You can list argument / queue multiple times -- this will tell condor that there are multiple "processes" that you want to have run.

The log file will give information about where the program is running and if it aborted for some reason. The output file contains the standard output from the program, the error file contains the standard error. If you list the same file for both it'll end up looking like you ran the program on a terminal with both normal output and error output mixed together.

More Information

The condor user documentation is at http://research.cs.wisc.edu/htcondor/manual/v7.8/index.html

A tutorial presentation (.ppt) and Videos from the 2008 Condor Week Presentations.

If you have a multi-threaded application (like bowtie) or an application that starts subprosess (like tophat) you'll need to tell condor how many cpus you expect to use. Most of the examples in /Templates illustrate how to use the request_cpu, request_memory, and request_disk parameters. If you're running a large program you'll want to set those so condor doesn't kill your job for exceeding the capabilities of the machine you're running on.


Distributed computing in practice:the Condor experience is a paper describing the history and goals of the Condor project.

WoldlabWiki: Condor (last edited 2014-07-15 21:33:54 by diane)