I am starting to use the packing option of fireworks (rlaunch multi, formerly mlaunch). I want to use it within qlaunch but I’d like to add an option in order to limit the time at which rlaunch multi can fetch some firework.
As an example, lets suppose I have a series (say, a hundred or so, anyway it does not affect the idea) of fireworks that I’d like to run on 24 processors each. Let’s imagine I know each of these should take maximum 30 minutes. What I’d like to do is to tell rlaunch multi to take a new firework only if the remaining time in the queued job (with, for example rlaunch multi 4, i.e. 96 processors) is more than 30 minutes.
Another example would be : even if each of the fireworks should take around 10 hours, I am ok to start them if they run for at least 1 hour (because I might have some “garde-fou” to take care of this) so I’d like to tell rlaunch multi to take a new firework only if the remaining time in the queued job is more than 1 hour.
Is there any way currently to do that ? If not, what would you recommend to implement ? One way to do it is to have something that queries the remaining time on the fly in the queue adapter (in a similar way to the get_njobs_in_queue, you would pass the reservation id of the current queued job and it would automatically give you back the remaining time of this job). Another way would be to have a time t0 at which rlaunch multi started and to allow rlaunch multi to fetch a new firework only if the current time is before t0+rlaunch_multi_time- minimum_running_time. Do you think of another way ?
Thanks a lot,