Sometimes when we run a one-threaded rule, it fails because it only uses one core and needs more memory than the one that core contains (KrakenUniq2krona, aggregate, Deamination, etc). In order to be able to give more memory to that rule we need to be able to give it more cores even if it won't use several threads. To do so, the rule need to have at least this definition in its snakemake:
threads : 1
It's a trick that makes it possible. Otherwise it just persist using 1 core, whatever we write in the slurm profile. This could be an easy fix by adding this specification to all the rules. (this was suggested by TJ and is very practical)
Sometimes when we run a one-threaded rule, it fails because it only uses one core and needs more memory than the one that core contains (KrakenUniq2krona, aggregate, Deamination, etc). In order to be able to give more memory to that rule we need to be able to give it more cores even if it won't use several threads. To do so, the rule need to have at least this definition in its snakemake: