클러스터 구성 파일의 메모리 및 리소스에 대한 기본 설정을 정의한 다음 필요시 규칙에 따라 재정의 할 수 있습니까? resources
필드가 클러스터 구성 파일에 직접 연결되어 있습니까? 아니면 가독성을위한 필드 params
에 대한 멋진 방법입니까? 아래의 예에서 Snakemake - LSF (bsub) 클러스터 구성을 규칙에 따라 재정의합니다.
rule a
에 대한 기본 클러스터 CONFIGS를 사용하지만,
rule b
에 사용자 지정 변경 (
memory=40000
및
rusage=15000
)를 사용합니까?
cluster.json :
{
"__default__":
{
"memory": 20000,
"resources": "\"rusage[mem=8000] span[hosts=1]\"",
"output": "logs/cluster/{rule}.{wildcards}.out",
"error": "logs/cluster/{rule}.{wildcards}.err"
},
}
Snakefile : 나는 underst
snakemake --cluster-config cluster.json
--cluster "bsub -M {cluster.memory} -R {cluster.resources} -o logs.txt"
-j 50
: 실행
rule all:
'a_out.txt', 'b_out.txt'
rule a:
input:
'a.txt'
output:
'a_out.txt'
shell:
'touch {output}'
rule b:
input:
'b.txt'
output:
'b_out.txt'
shell:
'touch {output}'
명령 그리고 클러스터 설정 파일에서 규칙 특정 리소스 요구 사항을 정의하는 것이 가능하지만 가능한 경우 Snakefile에서 직접 정의하는 것을 선호합니다.
다른 방법으로이를 구현하는 더 좋은 방법이 있으면 알려 주시기 바랍니다.
:
는 당신은 직접 각 규칙에resources
을 추가 할 수 있습니다
이 관련 포스트 그냥 내가 볼때 후 발견 여기에 - https://stackoverflow.com/q/45111823/3998252. 이 질문은 예제가있는 몇 가지 세부 정보를 표시하므로 내 게시물을 삭제하지 않을 것입니다. – JeeYem