Resource Management and Accounting Notebook - page 25 of 150

EditDeleteAnnotateNotarize
First PagePrevious PageNext PageLast PageTable of ContentsSearch

Date and Author(s)

Common RMS attributes

Consolidated resource management definitions:

Job A container for most of the job related information. I think the following lists most of the items needed, though it doesn't address multistep jobs. Many of the items are defined below.

 	Static information:   
 		User information:   
 			UserName   
 			Group   
 			UID?   
 		Job Execution information   
 			environment (env)   
 			working directory (cwd)   
 			command to execute   
 		Job Options   
 			stdio processing   
 			email alerts   
 	Resource request:   
 		# nodes   
 		memory    
	 	disk    
	 	special features   
 		account???   
 		time requested   
 	Resource allocation:   
 		assigned nodes   
 		special features (e.g. a license?)   
 		assigned memory/disk/etc limits??   
 		time limit   
 		reservation???   
 

Job ID An indentifier that uniquely specifies a job in the resource management system irregardless of its execution state. This identifier will be used as an arguement to most commands to specify the target of a job action.

    
<xs:element name='jobid' type='xs:string'/> 

Account The account the user wishes to be charged for the associated job. If ommitted the user's default account will be charged.

   
<xs:attribute name='account' type='xs:string'/> 

UserName The Username for the associated job.

<xs:attribute name='UserName' type='xs:string'/> 

UID The UID for the associated job.

<xs:attribute name='UID' type='xs:nonNegativeInteger'/> 

Group The execution group for the associated job.

<xs:attribute name='Group' type='xs:string'/> 

GID The GID for the associated job.

<xs:attribute name='GID' type='xs:nonNegativeInteger'/> 

env The execution environment for the associated job.

<xs:attribute name='env' type='xs:string'/> 

cwd The working directory for the associated job.

<xs:attribute name='cwd' type='xs:string'/> 

exec The user command to execute at Job startup.

<xs:attribute name='exec' type='xs:string'/> 

stdout The location where stdout will be sent at job termination.

<xs:attribute name='stdout' type='xs:string'/> 

stderr The location where stderr will be sent at job termination.

<xs:attribute name='stderr' type='xs:string'/> 

stdio Flags to specify the combination of stdout and stderr into a single file. Can someone define what merged-labelled means?

 
<xs:simpletype name='stdio' base='xs:string' use='optional'> 	  
  <xs:enumeration value='separate'/>  
 	<xs:enumeration value='merged'/>  
 	<xs:enumeration value='merged-labelled'/>  
 	<xs:enumeration value='discard'/>   
</xs:simpletype> 

email Flags for email notification of job related events.

 
<xs:simpletype name='email' base='xs:string' use='optional'>  
 	<xs:enumeration value='start'/>  
 	<xs:enumeration value='end'/>  
 	<xs:enumeration value='both'/>  
 	<xs:enumeration value='never'/>   
</xs:simpletype> 

Resource_Request A list of the required resources needed for the job.

<xs:complextype name='Resource_Request'>  
 </xs:complextype>

Commands

Create-Job Used to add a new job to the system. Must include a full job description as an arguement.

Delete-Job Used to remove an active job from the system. Must include a valid jobid as an arguement.

Modify-Job Used to alter job attributes. Must include a jobid list of attributes to modify.

Query-Job Used to look up partial or full job information. Must include a jobid as an arguement.

 
<xs:choice>  
 	<xs:element name='Create-Job' type='CreateJobType'/>  
 	<xs:element name='Delete-Job' type='DeleteJobType'/>  
 	<xs:element name='Modify-Job' type='ModifyJobType'/>  
 	<xs:element name='Query-Job' type='QueryJobType'/>   
</xs:choice>  
  
<xs:complextype name='CreateJobType'>  
 	<!-- Jobid is required for components other than the queue manager -->  
 	<xs:element name='jobid' type='xs:string' use='required'/>  
 	<xs:element name='Job' type='JobType' use='required'/>   
</xs:complextype>    
  
<xs:complextype name='DeleteJobType'>  
 	<xs:element name='jobid' type='xs:string' use='required'/>  
 	<!-- Is there a need for additional options here? -->  
</xs:complextype>  
  
<xs:complextype name='ModifyJobType'>  
 	<xs:element name='jobid' type='xs:string' use='required'/>  
 	<!-- This should probably look a lot like the CreateJob arguements?? -->  
</xs:complextype>  
  
<xs:complextype name='QueryJobType'>  
 	<xs:element name='jobid' type='xs:string'/>  
 	<xs:element name='args' type='xs:string'/>  
 	<!-- The args will probably have several forms depending on the type 
 	of information desired. -->  
</xs:complextype>