@@ -22,15 +22,11 @@ spec:
2222 configMapKeyRef :
2323 name : sessionspaces
2424 key : data_directory
25- # #
2625 volumes :
2726 - name : session
2827 hostPath :
2928 path : " {{`{{ workflows.parameters.visitdir}}`}}"
3029 type : Directory
31- # #
32- # should claim and use a volume called workflows within the visit directory called workflows
33- # #
3430 volumeClaimTemplates :
3531 - metadata :
3632 name : tmpdir
@@ -40,50 +36,77 @@ spec:
4036 requests :
4137 storage : 1Gi
4238 storageClassName : netapp
43- # #
4439 templates :
45- - name : ptyrex-container
46- steps :
47- - - name : ptyrex
48- template : ptyrex
49- # #
50- - name : ptyrex
51- inputs :
52- parameters :
53- - name : config_json
54- value : " {{`{{workflows.parameters.config_json}}`}}"
55- - name : scan_number
56- value : " {{`{{workflows.parameters.scan_number}}`}}"
57- - name : projection_start
58- value : " {{`{{workflows.parameters.proj_start}}`}}"
59- - name : projection_end
60- value : " {{`{{workflows.parameters.proj_end}}`}}"
61- - name : nprocs
62- value : " {{`{{workflows.parameters.nprocs}}`}}"
63- - name : memory
64- value : " {{`{{ workflow.parameters.memory }}`}}"
65- script :
66- image : gitlab.diamond.ac.uk:5050/scisoft/ptychography/dimtools/mib2x # I am using this image to test the workflow generates its inputs correctly not to run anything at the moment
67- imagePullPolicy : Always
68- env :
69- - name : BLOSC_NTHREADS
70- value : " {{`{{ inputs.parameters.nprocs }}`}}"
71- - name : OMP_NUM_THREADS
72- value : " {{`{{ inputs.parameters.nprocs }}`}}"
73- volumeMounts :
74- - name : tmpdir
75- mountPath : /tmp
76- - name : session
77- mountPath : " {{`{{workflows.parameters.visitdir}}`}}"
78- command : [sh]
79- source : |
80- #!/bin/sh
81- set -e
82-
83- cmd=("python mpiexec -np nprocs ptyrex_recon -c {{`{{workflows.parameters.config_json}}`}} -s {{`{{workflows.parameters.scan_number}}`}} -p {{`{{workflows.parameters.projection_start}}`}}-{{`{{workflows.parameters.projection_end}}`}}")
84- echo "Executing: ${cmd[@]}"
85- #exec "${cmd[@]}"
86-
87-
40+ - name : ptyrex-container
41+ inputs :
42+ parameters :
43+ - name : config_json
44+ value : " {{`{{workflow.parameters.config_json}}`}}"
45+ - name : scan_number
46+ value : " {{`{{workflow.parameters.scan_number}}`}}"
47+ - name : projection_start
48+ value : " {{`{{workflow.parameters.proj_number}}`}}"
49+ - name : nprocs
50+ value : " {{`{{workflow.parameters.nprocs}}`}}"
51+ - name : memory
52+ value : " {{`{{ workflow.parameters.memory }}`}}"
53+ container :
54+ image : gitlab.diamond.ac.uk:5050/scisoft/ptychography/dimtools/ptyrex:latest
55+ imagePullPolicy : Always
56+ env :
57+ - name : CUPY_CACHE_DIR
58+ value : /tmp/.cupy/kernel_cache
59+ - name : MKL_NUM_THREADS
60+ value : " 1"
61+ - name : NUMEXPR_NUM_THREADS
62+ value : " 1"
63+ - name : OMP_NUM_THREADS
64+ value : " 1"
65+ command :
66+ - " /opt/conda/bin/mpirun"
67+ args :
68+ - " -np"
69+ - " {{`{{ inputs.parameters.nprocs }}`}}"
70+ - " /home/ptyrex_recon"
71+ - " -c"
72+ - " {{`{{ inputs.parameters.config_json }}`}}"
73+ - " -s"
74+ - " {{`{{ inputs.parameters.scan_number }}`}}"
75+ - " -p"
76+ - " {{`{{ inputs.parameters.proj_number }}`}}"
8877
78+ volumeMounts :
79+ - name : tmpdir
80+ mountPath : /tmp
81+ - name : session
82+ mountPath : " {{`{{ workflow.parameters.visitdir }}`}}"
83+ podSpecPatch : |
84+ containers:
85+ - name: main
86+ resources:
87+ requests:
88+ cpu: "{{`{{ inputs.parameters.nprocs }}`}}"
89+ memory: "{{`{{ inputs.parameters.memory }}`}}"
90+ nvidia.com/gpu: "{{`{{ inputs.parameters.nprocs }}`}}"
91+ limits:
92+ cpu: "{{`{{ inputs.parameters.nprocs }}`}}"
93+ memory: "{{`{{ inputs.parameters.memory }}`}}"
94+ nvidia.com/gpu: "{{`{{ inputs.parameters.nprocs }}`}}"
95+ tolerations :
96+ - key : nvidia.com/gpu
97+ operator : Exists
98+ effect : NoSchedule
99+ - key : nodetype
100+ operator : Equal
101+ value : gpu
102+ effect : NoSchedule
103+ - key : nodegroup
104+ operator : Equal
105+ value : workflows
106+ effect : NoSchedule
107+ volumes :
108+ - name : session
109+ hostPath :
110+ path : " {{`{{ workflow.parameters.visitdir }}`}}"
111+ type : Directory
89112
0 commit comments