Senior R&D Manager (Data Science) at Synopsys Software Integrity Group and Treasurer at Farset Labs
Quick and dirty one that tripped me up.
In an effort to make sure that my machine was still useable during these runs, I changed the ‘niceness’ value of the spawned processes… or so I thought.
First part is a handy way to make sure that your subprocess simulations actually use different random numbers…. which for Monte Carlo style simulation is pretty damned important…
But, simple enough
os.nice call. I reads like it says “Set the niceness value of this process to 5”.
It does not, it Increments the niceness value. (And returns the new value)
This means that after a few repeated iterations of this simulation, my processes end up with the maximum niceness (i.e. least priority) of 19. Which is not ideal.
Simple enough fix however; swap the
os.nice(5) call with: