Hi, Increase the default h_vmem to 4G or 6G. vmem is different that res mem, and it is the only practical memory limit that can be enforced by current linux kernels with opensource grid engine.
For java jvms, you may need to set your mx value to the max vmem value you use for default. For normal running programs, vmem is slightly greater than res mem. With other programs or packages, h_vmem can be 2x or 3x that of res mem, or more if programs do mmap. You can easily test this with qlogin -l h_vmem=4G and then test your app directly. For more fine grandular control of your runtime resource limits, look into Univa Grid Engine specifically their cgroups integration... The easiest way to deal with the issue is to purchase machines with a lot of memory... :) if you can.... -Ed -----Original Message----- From: Mishkin Derakhshan [mailto:[email protected]] Sent: Monday, February 23, 2015 07:07 PM To: [email protected] Subject: [gridengine users] How to set up h_vmem as a consumable resource Hi, We have some jobs that require significant amounts of memory so we want to try and setup h_vmem as a consumable resource to manage this. This is what we have setup: $ qconf -sq dev.q | grep h_vmem h_vmem 3.7G $ qconf -sc | grep h_vmem h_vmem h_vmem MEMORY <= YES YES 0 0 And if we submit jobs like this then we don't have any problems, $ qsub -b y -j y -l h_vmem=1G -q dev.q sleep 100 But if we submit jobs without explicitly requesting h_vmem (i.e., we don't use -l h_vmem=X) then the jobs die on startup saying it can't allocate memory: error reason 1: 02/19/2015 14:13:39 [0:14840]: can't set additional group id (uid=0, euid=0): Cannotallocate memory We _think_ this has to do with setting a default h_vmem (on a queue basis? host basis?) so jobs that don't explicitly request the resource will use something by default, but we've been unable to figure out how to set this up. We are using 6.1u3. thanks
_______________________________________________ users mailing list [email protected] https://gridengine.org/mailman/listinfo/users
