Following up on the suggestion from from William Hay about using a
JSV to "wildcard" a PE request in order to deal with MPI jobs on a
multi-architecture cluster, I've found that the JSV unexpectedly alters
a resource request from booleans to float.
In ~/.sge_request, I've got:
-l centos5
for a job submitted without the JSV, this works fine and sets a hard resource
request of "centos5=TRUE".
However, when I submit the job and call the JSV (qsub -jsv /path/to/myjsv
myjob),
the value of "centos5" in the hard resource list is changed to "0.000000".
If I change the line in ~/.sge_request to read:
-l centos5=TRUE
then it is not altered by the JSV. We're using SGE 6.2u5.
The JSV consists of:
#############################
#!/bin/sh
# from
# http://www.mentby.com/Group/grid-engine/default-resource-per-queue.html
# JSV to convert PE names to wildcard version, in order to allow users to
submit jobs
# with:
# -l pe openmpi
# and have it transparently refer to
# -l pe openmpi-Intel*
# or
# -l pe openmpi-AMD*
jsv_on_start() {
return
}
jsv_on_verify() {
pe=$(jsv_get_param pe_name)
case "$pe" in
openmpi )
jsv_set_param pe_name "$pe-*"
jsv_sub_add_param l_hard openmpi TRUE # in case it wasn't set
already
jsv_correct "Job was modified"
;;
esac
jsv_accept "Job OK"
return
}
. ${SGE_ROOT}/util/resources/jsv/jsv_include.sh
jsv_main
#############################
_______________________________________________
users mailing list
[email protected]
https://gridengine.org/mailman/listinfo/users