Thank you so much for your reply!

>> Will you use the consumable virtual_free here instead mem?

Yes I meant to write virtual_free, not mem. Apologies.

>> For parallel jobs you need to configure a (or some) so called PE (Parallel 
>> Environment).

My jobs are actually just one process which uses multiple cores, so for example 
in top one process "simv" is currently using 2 cpu cores (200%).

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 3017 kelly     20   0 3353m 3.0g 165m R 200.0  0.6  15645:46 simv

So I'm not sure PE is suitable for my case, since it is not multiple parallel 
processes running at the same time. Am I correct?

If so, I am trying to find a way to get SGE to keep track of the number of 
cores used, but I believe it only keeps track of the total CPU usage in %. I 
guess I could use this and and the <total num cores> to get the <num of cores 
in use>, but how to integrate it in SGE?

Thank you again for your help.

John

-----Original Message-----
From: Reuti [mailto:re...@staff.uni-marburg.de]
Sent: Monday, December 05, 2016 4:21
To: John_Tai
Cc: users@gridengine.org
Subject: Re: [gridengine users] CPU complex

Hi,

Am 05.12.2016 um 08:00 schrieb John_Tai:

> Newbie here, hope to understand SGE usage.
>
> I've successfully configured virtual_free as a complex for telling SGE how 
> much memory is needed when submitting a job, as described here:
>
> https://docs.oracle.com/cd/E19957-01/820-0698/6ncdvjclk/index.html#i1000029
>
> How do I do the same for telling SGE how many CPU cores a job needs? For 
> example:
>
>                 qsub -l mem=24G,cpu=4 myjob

Will you use the consumable virtual_free here instead mem?


> Obviously I'd need for SGE to keep track of the actual CPU utilization in the 
> host, just as virtual_free is being tracked independently of the SGE jobs.

For parallel jobs you need to configure a (or some) so called PE (Parallel 
Environment). Purpose of this is, to make preparations for the parallel jobs 
like rearranging the list of granted slots, prepare shared directories between 
the nodes,...

These PEs were of higher importance in former times, when parallel libraries 
were not programmed to integrate automatically in SGE for a tight integration. 
Your submissions could read:

    qsub -pe smp 4 myjob        # allocation_rule $peslots, control_slaves true
    qsub -pe orte 16 myjob        # allovation_rule $round_robin, 
control_slaves tue

where smp resp. orte is the chosen parallel environment for OpenMP resp. Open 
MPI. Its settings are explained in `man sge_pe`, the "-pe" parameter to in the 
submission command in `man qsub`.

-- Reuti
________________________________

This email (including its attachments, if any) may be confidential and 
proprietary information of SMIC, and intended only for the use of the named 
recipient(s) above. Any unauthorized use or disclosure of this email is 
strictly prohibited. If you are not the intended recipient(s), please notify 
the sender immediately and delete this email from your computer.

_______________________________________________
users mailing list
users@gridengine.org
https://gridengine.org/mailman/listinfo/users

Reply via email to