[gridengine users] manage multiple license

Reuti reuti at staff.uni-marburg.de
Wed May 6 10:04:57 UTC 2015


Hi,

> Am 04.05.2015 um 11:37 schrieb Mahbube Rustaee <rustaee at gmail.com>:
> 
> 
> 
> On Sun, May 3, 2015 at 4:58 PM, Reuti <reuti at staff.uni-marburg.de> wrote:
> Hi,
> 
> Am 03.05.2015 um 12:46 schrieb Mahbube Rustaee:
> 
> > Hi all,
> > 2 version of a software can't be run on a node. How can I config GE to prevent that. detail of question:
> > I have 2 different version (license) of a package , when a request of old version submit to cluster , no problem.
> 
> Do you mean to restrict the number of simultaneous running jobs of this kind to one? You could use a consumable complex and force users to request it.
> No, the number of  simultaneous different version  to one node is problem. when a request of first version be running to node, request of second version on same node cause problem. 
> 
> > How can I prevent new version to be run on same node and vice versa.
> 
> Or do you mean unlimited instances of each version?
> 
> How does the software conflict when running both versions on a node at the same time?
> new request of other version kill process of running version.

But only if it's from the same user I assume. What I can think about:

Introduce two consumable complexes: block_new, block_old, relation <= and two BOOL.

block_new           bn         INT         <=      YES         YES        0        0
block_old           bo         INT         <=      YES         YES        0        0
run_new             rn         BOOL        ==      FORCED      YES        0        0
run_old             ro         BOOL        ==      FORCED      YES        0        0



Both attached with an arbitrary count on each exechost level.

complex_values        block_new=8,block_old=8


Next is: two queues, one for the old and one for the new version.

$ qconf -sq new_version.q
...
load_thresholds       block_new=7
...
complex_values        run_new=TRUE


$ qconf -sq old_version.q
...
load_thresholds       block_old=7
...
complex_values        run_old=TRUE



and vice versa. The effect should be to start the new version:

`qsub -l block_old=1,run_new ...`

will start in new_version.q, decrease block_old, and the old_version.q will get the threshold signaled for this queue instance which disables it. Resp.

`qsub -l block_new=1,run_old ...`

the opposite.

-- Reuti


> 
> -- Reuti
> 
> 
> > Thx
> >
> > --
> > Best Regards
> > Rustaee
> > _______________________________________________
> > users mailing list
> > users at gridengine.org
> > https://gridengine.org/mailman/listinfo/users
> 
> 
> 
> 
> -- 
> Best Regards
> Rustaee




More information about the users mailing list