R
rick
Guest
Follow up:
We got to work with the snipet of code below keying off of ipcGetPid.
SGE_LBS is the hook that supports
the wait statement and so if the command is not passed to the LBS
process, the wait will be ignored. NC
commands are not currently supported by CDS. You can use the ?drms
option for single ended jobs
which do not have dependencies like post-processing. If you do have
post-processing then will need to
use something like this:
/************************* NetworkComputer Interface Code
***************************/
;; Compute a unique name for the jobs used in this session.
;; Here we use the PID of the current Ocean process as
uniquifier.
;; The name of each job contains the corner name.
;; Options used in nc run:
;; -C JobClass
;; -J JobName
;;
;; there are 3 additional lines marked with ///// NC INTERFACE
;;
sprintf( ncNameRoot "ocn_%d_" ipcGetPid() )
ncName = strcat( ncNameRoot curr_corner )
submissionCommand = strcat( "nc run -C spectre_ade -J "
ncName )
myresults = run( ?jobName "rtda" ?drmsCmd submissionCommand )
/************************* NetworkComputer Interface Code
***************************/
joblist = append( joblist list(list(myresults curr_corner
ncName)) ) ;; ///// NC INTERFACE - add ncName
) ;end foreach curr_corner
foreach(job joblist
curr_job =nth(0 job)
curr_corner=nth(1 job)
ncName =nth(2
job) ;; ///// NC
INTERFACE -add ncName
println( strcat("WAITING FOR COMPLETION OF JOB " ncName ) )
csh( strcat("nc wait -select jobname=="
ncName ) ) ;; ///// NC INTERFACE -add line
Rick
We got to work with the snipet of code below keying off of ipcGetPid.
SGE_LBS is the hook that supports
the wait statement and so if the command is not passed to the LBS
process, the wait will be ignored. NC
commands are not currently supported by CDS. You can use the ?drms
option for single ended jobs
which do not have dependencies like post-processing. If you do have
post-processing then will need to
use something like this:
/************************* NetworkComputer Interface Code
***************************/
;; Compute a unique name for the jobs used in this session.
;; Here we use the PID of the current Ocean process as
uniquifier.
;; The name of each job contains the corner name.
;; Options used in nc run:
;; -C JobClass
;; -J JobName
;;
;; there are 3 additional lines marked with ///// NC INTERFACE
;;
sprintf( ncNameRoot "ocn_%d_" ipcGetPid() )
ncName = strcat( ncNameRoot curr_corner )
submissionCommand = strcat( "nc run -C spectre_ade -J "
ncName )
myresults = run( ?jobName "rtda" ?drmsCmd submissionCommand )
/************************* NetworkComputer Interface Code
***************************/
joblist = append( joblist list(list(myresults curr_corner
ncName)) ) ;; ///// NC INTERFACE - add ncName
) ;end foreach curr_corner
foreach(job joblist
curr_job =nth(0 job)
curr_corner=nth(1 job)
ncName =nth(2
job) ;; ///// NC
INTERFACE -add ncName
println( strcat("WAITING FOR COMPLETION OF JOB " ncName ) )
csh( strcat("nc wait -select jobname=="
ncName ) ) ;; ///// NC INTERFACE -add line
Rick