Author Topic: Mentalray license "DENIED" messages (Licensed number of users already reached)  (Read 5779 times)

jburk

  • Administrator
  • *****
  • Posts: 493
When rendering with the Mentalray network render licenses, you will often see these types of messages appearing in the license server's logs:

16:34:07 (adskflex) DENIED: "85537MAYAMMR1_F" user@host.site.com(Licensed number of users already reached. (-4,342))
16:34:07 (adskflex) DENIED: "85537MAYAMMR1_2011_0F" user@host.site.com (Licensed number of users already reached. (-4,342))


It's normal with Maya's network render licenses for mentalray to see these "denied" messages. It has to do with the unusual way Autodesk has implemented counting the floating mentalray network rendering licenses.

An Autodesk customer is entitled to 5 mentalray network render licenses for every floating license of Maya.  Autodesk gives you an 1 R1 license, 1 R2 license, 1 R3, 1 R4, and 1 R5 license.  So if you own 7 floating copies of Maya, you will have 7 R1's, 7 R2's, etc.

Then, when a machine attempts to check out a license, it first asks for an R1. If all R1's are in use, a "denied" message appears in the license server logs, and then client asks for an R2. If all R2's are checked out, the client asks for an R3, etc, all the way up to R5's. Only if the client is refused an R5 does (or should it) give up and decide it can't get a license. So, the only ~actual~ "denied" message is when you see a denied message for the 85537MAYAMMR5_F licenses.

If you follow the logs, you will see a single machine initially ask for and get denied an R1, then work its way up the ladder until it either succeeds in getting a license or is denied an R5.

As for the license consumption, Autodesk explicitly does not allow sharing of network rendering licenses on a render node; they say this is to prevent "application servers" with the new machines with high processor core counts.

So if you are running 3 instances of the mentalray render on a single machine, you will see 3 licenses consumed.

With the way that mentalray multi-threads up to around 8 threads, it's very close to as efficient to render a single 8-threaded render on one machine (and consume a single license) as it is to render 8 separate single-threaded renders (but consume 8 licenses). And the multi-threaded render only consumes a bit more than 1/8 the memory than the 8 single-threaded renders.

To limit the number of concurrent mentalray jobs, define a global resource on your Supervisor and then specify in the job reservation to reserve one of these global resources.

First, determine how many floating licenses of Maya you own, then multiply that number by 5.  For this example, we will assume that you own 7 floating licenses, which would give you (5*7)=35 mentalray network render licenses.

Now, we'll make up a "synthetic" resource and give it any name we like; we'll use mr_network for "mentalray network render".
 
In the supervisor's  qb.conf, add the following to the current value for supervisor_global_resources:

Code: [Select]
supervisor_global_resources="global.mr_network=35"
Now we need to ensure that the render jobs consume these resources, so that Qube can keep count of how many are in use.  In the QubeGUI, bring up the Maya job submission UI, and add the following value to the job's reservation value:

Code: [Select]
global.mr_network=1
Hit the "Presets Set" button in the bottom of the UI, and you've saved this in the defaults for all Maya jobs you submit.  Note that these defaults are saved in the GUI preferences.


« Last Edit: April 20, 2011, 06:50:15 PM by jburk »