🎉Community Raffle - Win $25

An exclusive raffle opportunity for active members like you! Complete your profile, answer questions and get your first accepted badge to enter the raffle.
Join and Win

Limiting the number of cores for a scenario with parametric distribution

User: "sjerra"
Altair Community Member
Updated by sjerra

Hi,

I run flux simulations via matlab without flux gui. we use it to automatically solve hundreds of different design generated through matlab. I setup parametric distribution in my solve scenarios and setup the distribution manager with the cores I want to dedicate (48). 

However, the problem is, I run multiple simulations in parallel via the matlab parallel toolbox. So I don't want one simulation to go and run off with all the cores in my distribution manager. But this is what's happening now. The first solver to start gets all the cores assigned, the others have to wait. One can argue that theoretically the total calculation time remains the same but that's not the case. Depending on how many parameters there are, above a certain amount of cores, the calculation time goes back up. Significantly. example: parametric sweep of 300 values. 1 core=350s, 10c=140s, 15c=120s, 48c=250s. Preparing the runs on 48c just takes more time then the solving. 

So when sending my scenario to the distribution manager for solving, it would be great if I can assign the number of cores I want to use for that job.

The help is very vague in this. in the best practices 'setup flux for batch schedulers', there is a section on parametric distribution where one can set three environment variables FLUX_PARAMETRIC FLUX_PARAM_AUTO and FLUX_PARAM_MAXCORES. These environment variables seem to do exactly what I need and if I read the document they seem variables that are passed to flux and not to the batch scheduler. But I'm not sure. I tried to replicate them via the matlab and pass them to the flux debug window but they don't work.  

The other document I found was with PBS via compute manager. But I don't know if this works well with matlab. It requires the compute manager interface to set it up. In my case I need full control in matlab because we run heavily automated.

Does anybody know if it is possible to limit the number of cores that a scenario uses so that the distribution manager can take on more jobs in parallel? 

 

Thank you for your help,

 

Sjerra

 

 

Find more posts tagged with