Я бы хотел, чтобы Snakemake установил ограничения памяти для отдельных правил. Судя по документации snakemake, аргумент mem_mb
выглядит так, как будто он будет работать, но задание использует больше памяти, чем я выделил.
Вот простое правило, которое использует несколько ГБ памяти. Я хотел бы, чтобы правило было остановлено, как только оно достигнет предела памяти, но оно завершится без проблем.
rule:
output:
"a"
threads: 1
resources:
mem_mb = 100
shell:
"""
python3 -c 'import numpy; x=numpy.ones(1_000_000_000)'
touch a
"""
Можно ли связать этот предел? Мне бы хотелось, чтобы решение было портативным, работало бы на Windows и Linux. Я использую snakemake локально, а не с пакетным планировщиком или настройкой контейнера.