Submits a job through a Globus resource to a Condor pool.



handle = gd_condorsubmit(classAD,RSLstruct,host)

handle = gd_condorsubmit(classAD,RSLstruct,host,filesystem)



handle = gd_condorsubmit(classAD,RSLstruct,host) returns a string handle containing the Globus job handle for a successfully submitted job. Where classAD is a structure describing the job to be submitted to the Condor pool, the structure, RSLstruct describes the command used to submit the job to the Condor pool, and host is a string describing the Globus resource to be used. The argument host can have one of the following formats:

                            - hostname

                            - hostname:port

                            - hostname/service

                            - hostname:port/service


handle = gd_condorsubmit(classAD,RSL,host,filesystem) as above where the argument filesystem defines the filesystem on host. When filesystem = 'NFS' a shared filesystem is assumed, otherwise a non-NFS filesystem is assumed.


Input arguments

classAD        The classAD structure contains a description of the requirements of the job to be submitted to the Condor pool. The fields of the structure specify the attributes of the Condor classAD file that is used to submit the job. The valid fields include:



The name of the executable to be submitted to the Condor pool


A string specifying the requirements from the machine upon which to the job should be run. These requirements may include:

  • Operating system: OpSys
  • Architecture: Arch
  • Memory: Memory


The arguments to the executable


A string containing a comma separated list of files to be submitted with executable


The filename to pipe the output from the job


The filename to pipe the error from the job


The filename to which to write the Condor log


A string specifying the type of Condor job to be run. Possible values include:

  • MPI
  • JAVA


Other possible fields in the classAD structure include all of the valid classADs attributes. These attributes are documented at the Condor project homepage (


RSLstruct    The RSLstruct structure contains the RSL attributes which specifies the command used to submit the job to the Condor pool. The required fields include:



The path to the 'condor_submit' executable on host


The name of the Condor classAD file produced by gd_condorsubmit


The name of the working directory on host




The following example demonstrates the submission of a Linux and a Windows job to a Condor pool via the Globus server ''. The Linux job is described by the structure classAD_Linux, and the Windows job is described by the structure classAD_Windows.


%Specify classAD_Linux

classAD_Linux.requirements = 'Arch == "INTEL" && OpSys == "LINUX"';

classAD_Linux.executable = '';

classAD_Linux.output = 'sleep.output';

classAD_Linux.error = 'sleep.error';

classAD_Linux.log = 'sleep.log';

classAD_Linux.universe = 'VANILLA';

classAD_Linux.transferfiles = 'ONEXIT';

classAD_Linux.should_transfer_files = 'YES';

classAD_Linux.when_to_transfer_output = 'ON_EXIT';

classAD_Linux.arguments = '1m';


% Specify classAD_Windows

classAD_Windows.requirements = 'Arch == "INTEL" && OpSys == "WINNT51"';

classAD_Windows.environment = 'path=c:\windows\system32';

classAD_Windows.executable = 'printname.bat';

classAD_Windows.output = 'printname.output';

classAD_Windows.error = 'printname.error';

classAD_Windows.log = 'printname.log';

classAD_Windows.universe = 'VANILLA';

classAD_Windows.transferfiles = 'ALWAYS';

classAD_Windows.should_transfer_files = 'YES';

classAD_Windows.when_to_transfer_output = 'ON_EXIT';

classAD_Windows.transfer_input_files = 'file1.txt, file2.txt, file3.txt';


% Specify RSL

rsl.executable = '/usr/local/condor/bin/condor_submit';

rsl.arguments = 'myJob.sub'; = '/home/<USER>/';

rsl.stdout = 'myJob.stdout';

rsl.stderr = 'myJob.stderr';


% Make the Condor job submission

handle_Linux = gd_condorsubmit(classAD_Linux,rsl,'');

handle_Windows = gd_condorsubmit(classAD_Windows,rsl,'');



A valid proxy certificate is required to use this function.


The field names of the ClassAD and RSL structures should be lower case characters.  ClassAD string variables should be in upper case characters, e.g. 'LINUX' not 'Linux', or 'WINNT51' not WinNT51'.


See also

gd_jobsubmit, gd_submitunique





Copyright © 2007, The Geodise Project, University of Southampton