Garbage collection not aggressive enough on Slurm Cluster

Why not just call GC before each model run? typically GC takes 50-100ms, I assume your model runs take … a lot longer (seconds) So the overhead of doing this kind of thing might be very acceptable:

for parameter in myparams
   GC.gc(true) # minimal overhead if next step takes seconds
   modelrun(parameter)
end