Open jerdra opened 2 years ago
This could be useful: https://git.astron.nl/eosc/slurmexecutorplugin
I've seen this earlier while i was researching a solution for this problem. I think the one thing that bothered me about it was a lack of flexibility on how jobs are submitted.
For example, having some low compute jobs run locally on the airflow server and having others be submitted to the queue when they are compute intensive.
Actually, now that I think about it a bit more, a possible solution is if there could be a slurm partition that specifically submits back to tigrsrv for those very low-compute jobs. We could pass an executor_config
to modify how the jobs are submitted.
The one downside is that its not as portable as having a hybrid model (i.e extend the actual LocalExecutor w/Slurm submission capability).
The plugin you shared is pretty barebones (i.e doesn't implement executor_config
), but that could be an opportunity to build off of it
Thoughts from @DESm1th @kimjetwav?
A SlurmOperator base-class would be essential for our more intensive computing jobs (i.e bids-apps). However there are a couple of things we'd need to mange when working with this class: