public class GLite extends Abstract
This style should only be used when the condor on the submit host can directly talk to scheduler running on the cluster. In Pegasus there should be a separate compute site that has this style associated with it. This style should not be specified for the local site. As part of applying the style to the job, this style adds the following classads expressions to the job description
batch_queue - value picked up from globus profile queue or can be set directly as a Condor profile named batch_queue +remote_cerequirements - See below
The remote CE requirements are constructed from the following profiles associated with the job.The profiles for a job are derived from various sources - user properties - transformation catalog - site catalog - DAX Note it is upto the user to specify these or a subset of them. The following globus profiles if associated with the job are picked up and translated to +remote_cerequirements key in the job submit files.
hostcount -> NODES xcount -> PROCS maxwalltime -> WALLTIME totalmemory -> TOTAL_MEMORY maxmemory -> PER_PROCESS_MEMORYThe following condor profiles if associated with the job are picked up
priority -> PRIORITYAll the env profiles are translated to MYENV For e.g. the expression in the submit file may look as
+remote_cerequirements = "PROCS==18 && NODES==1 && PRIORITY==10 && WALLTIME==3600 && PASSENV==1 && JOBNAME==\"TEST JOB\" && MYENV ==\"MONTAGE_HOME=/usr/montage,JAVA_HOME=/usr\""The pbs_local_attributes.sh file in share/pegasus/htcondor/glite picks up these values and translated to appropriate PBS parameters
NODES -> nodes PROCS -> ppn WALLTIME -> walltime TOTAL_MEMORY -> mem PER_PROCESS_MEMORY -> pmemAll the jobs that have this style applied dont have a remote directory specified in the submit directory. They rely on kickstart to change to the working directory when the job is launched on the remote node.
Modifier and Type | Field and Description |
---|---|
static String |
CONDOR_REMOTE_DIRECTORY_KEY
The Condor remote directory classad key to be used with Glite
|
static String |
STYLE_NAME
The name of the style being implemented.
|
mCredentialFactory, mLogger, mProps, mSiteStore
VERSION
Constructor and Description |
---|
GLite()
The default Constructor.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addSubExpression(StringBuffer sb,
String key,
Integer value)
Adds a sub expression to a string buffer
|
protected void |
addSubExpression(StringBuffer sb,
String key,
String value)
Adds a sub expression to a string buffer
|
void |
apply(Job job)
Applies the gLite style to the job.
|
protected String |
getCERequirementsForJob(Job job)
Constructs the value for remote CE requirements expression for the job .
|
protected String |
missingKeyError(Job job,
String key)
Constructs an error message in case of style mismatch.
|
private String |
quote(String string)
Condor Quotes a string
|
apply, applyCredentialsForJobSubmission, applyCredentialsForLocalExec, applyCredentialsForRemoteExec, complainForCredential, errorMessage, initialize
public static final String STYLE_NAME
public static final String CONDOR_REMOTE_DIRECTORY_KEY
public void apply(Job job) throws CondorStyleException
job
- the job on which the style needs to be applied.CondorStyleException
- in case of any error occuring code generation.protected String getCERequirementsForJob(Job job) throws CondorStyleException
+remote_cerequirements = "PROCS==18 && NODES==1 && PRIORITY==10 && WALLTIME==3600 && PASSENV==1 && JOBNAME==\"TEST JOB\" && MYENV ==\"GAURANG=MEHTA,KARAN=VAHI\""The requirements are generated on the basis of certain profiles associated with the jobs. The following globus profiles if associated with the job are picked up
hostcount -> NODES xcount -> PROCS maxwalltime -> WALLTIME totalmemory -> TOTAL_MEMORY maxmemory -> PER_PROCESS_MEMORYThe following condor profiles if associated with the job are picked up
priority -> PRIORITYAll the env profiles are translated to MYENV
job
- CondorStyleException
- in case of condor quoting errorprotected void addSubExpression(StringBuffer sb, String key, String value)
sb
- the StringBufferkey
- the keyvalue
- the valueprotected void addSubExpression(StringBuffer sb, String key, Integer value)
sb
- the StringBufferkey
- the keyvalue
- the valueprotected String missingKeyError(Job job, String key)
job
- the job object.key
- the missing keyprivate String quote(String string) throws CondorStyleException
string
- the string to be quoted.CondorStyleException
- in case of condor quoting error