From adbbc2c220451405351d52caaf4394ebe79f9f2c Mon Sep 17 00:00:00 2001 From: Thomas Reis Date: Wed, 2 Mar 2022 23:36:56 +0100 Subject: [PATCH 1/5] Add WF .515 for ECAL GPU vs. CPU validation. --- .../python/upgradeWorkflowComponents.py | 17 ++++++++++++++++- .../python/EcalMonitorTask_cff.py | 2 +- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py index f079efe18c78a..6c4fa4a78086b 100644 --- a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py +++ b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py @@ -679,7 +679,7 @@ def setup_(self, step, stepName, stepDict, k, properties): offset = 0.512, ) -# add here a .513 workflow for GPU vs CPU validation +# add here a .513 workflow for GPU with fallback to CPU upgradeWFs['PatatrackECALOnlyGPUProfiling'] = PatatrackWorkflow( digi = { @@ -695,6 +695,21 @@ def setup_(self, step, stepName, stepDict, k, properties): offset = 0.514, ) +upgradeWFs['PatatrackECALOnlyGPU_Validation'] = PatatrackWorkflow( + digi = { + '--procModifiers': 'gpu,gpuValidationEcal' + }, + reco = { + '-s': 'RAW2DIGI:RawToDigi_ecalOnly,RECO:reconstruction_ecalOnly,VALIDATION:@ecalOnlyValidation,DQM:@ecalOnly', + '--procModifiers': 'gpu,gpuValidationEcal' + }, + harvest = { + '-s': 'HARVESTING:@ecalOnlyValidation+@ecal' + }, + suffix = 'Patatrack_ECALOnlyGPU_Validation', + offset = 0.515, +) + upgradeWFs['PatatrackHCALOnlyCPU'] = PatatrackWorkflow( reco = { '-s': 'RAW2DIGI:RawToDigi_hcalOnly,RECO:reconstruction_hcalOnly,VALIDATION:@hcalOnlyValidation,DQM:@hcalOnly+@hcal2Only', diff --git a/DQM/EcalMonitorTasks/python/EcalMonitorTask_cff.py b/DQM/EcalMonitorTasks/python/EcalMonitorTask_cff.py index e7956df7b4d7b..16c6d5e157ea3 100644 --- a/DQM/EcalMonitorTasks/python/EcalMonitorTask_cff.py +++ b/DQM/EcalMonitorTasks/python/EcalMonitorTask_cff.py @@ -6,6 +6,6 @@ from Configuration.ProcessModifiers.gpuValidationEcal_cff import gpuValidationEcal from DQM.EcalMonitorTasks.ecalGpuTask_cfi import ecalGpuTask -gpuValidationEcal.toModify(ecalGpuTask.params, runGpuTask = cms.untracked.bool(True)) +gpuValidationEcal.toModify(ecalGpuTask.params, runGpuTask = True) gpuValidationEcal.toModify(ecalMonitorTask.workers, func = lambda workers: workers.append("GpuTask")) gpuValidationEcal.toModify(ecalMonitorTask, workerParameters = dict(GpuTask = ecalGpuTask)) From 0a4399ff9f31f25dd353b5155f7a2e0375908f1f Mon Sep 17 00:00:00 2001 From: Thomas Reis Date: Thu, 3 Mar 2022 09:14:59 +0100 Subject: [PATCH 2/5] Move WF to .513. --- Configuration/PyReleaseValidation/README.md | 5 ++++ .../python/upgradeWorkflowComponents.py | 30 +++++++++---------- 2 files changed, 19 insertions(+), 16 deletions(-) diff --git a/Configuration/PyReleaseValidation/README.md b/Configuration/PyReleaseValidation/README.md index 2d597155457e6..83f761360d04e 100644 --- a/Configuration/PyReleaseValidation/README.md +++ b/Configuration/PyReleaseValidation/README.md @@ -33,12 +33,17 @@ The offsets currently in use are: * 0.5: Pixel tracking only + 0.1 * 0.501: Patatrack, pixel only quadruplets, on CPU * 0.502: Patatrack, pixel only quadruplets, with automatic offload to GPU if available +* 0.504: Patatrack, pixel only quadruplets, GPU profiling * 0.505: Patatrack, pixel only triplets, on CPU * 0.506: Patatrack, pixel only triplets, with automatic offload to GPU if available +* 0.508: Patatrack, pixel only triplets, GPU profiling * 0.511: Patatrack, ECAL only, on CPU * 0.512: Patatrack, ECAL only, with automatic offload to GPU if available +* 0.513: Patatrack, ECAL only, GPU vs. CPU validation +* 0.514: Patatrack, ECAL only, GPU profiling * 0.521: Patatrack, HCAL only, on CPU * 0.522: Patatrack, HCAL only, with automatic offload to GPU if available +* 0.524: Patatrack, HCAL only, GPU profiling * 0.591: Patatrack, full reco with pixel quadruplets, on CPU * 0.592: Patatrack, full reco with pixel quadruplets, with automatic offload to GPU if available * 0.595: Patatrack, full reco with pixel triplets, on CPU diff --git a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py index 6c4fa4a78086b..e6148542544cf 100644 --- a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py +++ b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py @@ -679,7 +679,20 @@ def setup_(self, step, stepName, stepDict, k, properties): offset = 0.512, ) -# add here a .513 workflow for GPU with fallback to CPU +upgradeWFs['PatatrackECALOnlyGPUValidation'] = PatatrackWorkflow( + digi = { + '--procModifiers': 'gpu,gpuValidationEcal' + }, + reco = { + '-s': 'RAW2DIGI:RawToDigi_ecalOnly,RECO:reconstruction_ecalOnly,VALIDATION:@ecalOnlyValidation,DQM:@ecalOnly', + '--procModifiers': 'gpu,gpuValidationEcal' + }, + harvest = { + '-s': 'HARVESTING:@ecalOnlyValidation+@ecal' + }, + suffix = 'Patatrack_ECALOnlyGPU_Validation', + offset = 0.513, +) upgradeWFs['PatatrackECALOnlyGPUProfiling'] = PatatrackWorkflow( digi = { @@ -695,21 +708,6 @@ def setup_(self, step, stepName, stepDict, k, properties): offset = 0.514, ) -upgradeWFs['PatatrackECALOnlyGPU_Validation'] = PatatrackWorkflow( - digi = { - '--procModifiers': 'gpu,gpuValidationEcal' - }, - reco = { - '-s': 'RAW2DIGI:RawToDigi_ecalOnly,RECO:reconstruction_ecalOnly,VALIDATION:@ecalOnlyValidation,DQM:@ecalOnly', - '--procModifiers': 'gpu,gpuValidationEcal' - }, - harvest = { - '-s': 'HARVESTING:@ecalOnlyValidation+@ecal' - }, - suffix = 'Patatrack_ECALOnlyGPU_Validation', - offset = 0.515, -) - upgradeWFs['PatatrackHCALOnlyCPU'] = PatatrackWorkflow( reco = { '-s': 'RAW2DIGI:RawToDigi_hcalOnly,RECO:reconstruction_hcalOnly,VALIDATION:@hcalOnlyValidation,DQM:@hcalOnly+@hcal2Only', From 83b357f4dc7872fa9b679df642056459bfcb7ba2 Mon Sep 17 00:00:00 2001 From: Thomas Reis Date: Thu, 3 Mar 2022 11:47:23 +0100 Subject: [PATCH 3/5] Add accelerators cmsDriver option to request an nvidia GPU. --- .../PyReleaseValidation/python/upgradeWorkflowComponents.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py index e6148542544cf..c0ae662802b97 100644 --- a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py +++ b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py @@ -681,10 +681,12 @@ def setup_(self, step, stepName, stepDict, k, properties): upgradeWFs['PatatrackECALOnlyGPUValidation'] = PatatrackWorkflow( digi = { + '--accelerators': 'gpu-nvidia' '--procModifiers': 'gpu,gpuValidationEcal' }, reco = { '-s': 'RAW2DIGI:RawToDigi_ecalOnly,RECO:reconstruction_ecalOnly,VALIDATION:@ecalOnlyValidation,DQM:@ecalOnly', + '--accelerators': 'gpu-nvidia' '--procModifiers': 'gpu,gpuValidationEcal' }, harvest = { From 65532665871ab9e94e8ab4fc0ed0ccbd8f6aabb3 Mon Sep 17 00:00:00 2001 From: Thomas Reis Date: Thu, 3 Mar 2022 13:04:51 +0100 Subject: [PATCH 4/5] Fix python error. --- .../PyReleaseValidation/python/upgradeWorkflowComponents.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py index c0ae662802b97..9da4779247485 100644 --- a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py +++ b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py @@ -681,12 +681,12 @@ def setup_(self, step, stepName, stepDict, k, properties): upgradeWFs['PatatrackECALOnlyGPUValidation'] = PatatrackWorkflow( digi = { - '--accelerators': 'gpu-nvidia' + '--accelerators': 'gpu-nvidia', '--procModifiers': 'gpu,gpuValidationEcal' }, reco = { '-s': 'RAW2DIGI:RawToDigi_ecalOnly,RECO:reconstruction_ecalOnly,VALIDATION:@ecalOnlyValidation,DQM:@ecalOnly', - '--accelerators': 'gpu-nvidia' + '--accelerators': 'gpu-nvidia', '--procModifiers': 'gpu,gpuValidationEcal' }, harvest = { From f9271b0137f2fca32dc2c3ef49759baa59c7302a Mon Sep 17 00:00:00 2001 From: Thomas Reis Date: Fri, 4 Mar 2022 13:52:53 +0100 Subject: [PATCH 5/5] Add .513 WFs to relval_gpu. --- .../PyReleaseValidation/python/relval_gpu.py | 64 +++++++++---------- .../python/upgradeWorkflowComponents.py | 4 +- 2 files changed, 34 insertions(+), 34 deletions(-) diff --git a/Configuration/PyReleaseValidation/python/relval_gpu.py b/Configuration/PyReleaseValidation/python/relval_gpu.py index 04dfa32a05f83..b625c841667e6 100644 --- a/Configuration/PyReleaseValidation/python/relval_gpu.py +++ b/Configuration/PyReleaseValidation/python/relval_gpu.py @@ -14,39 +14,39 @@ #just define all of them #WFs to run in IB: -# mc 2018 (Patatrack pixel-only quadruplets: ZMM - on GPU, both CPU and GPU, auto) -# (Patatrack pixel-only triplets: ZMM - on GPU, both CPU and GPU, auto) -# (Patatrack pixel-only quadruplets: TTbar - on GPU, both CPU and GPU, auto) -# (Patatrack pixel-only triplets: TTbar - on GPU, both CPU and GPU, auto) -# (Patatrack ECAL-only: TTbar - on GPU, both CPU and GPU, auto) -# (Patatrack HCAL-only: TTbar - on GPU, both CPU and GPU, auto) -# (Patatrack full reco with pixel quadruplets: TTbar - on GPU, both CPU and GPU, auto) -# (Patatrack full reco with pixel triplets: TTbar - on GPU, both CPU and GPU, auto) -# mc 2021 (Patatrack pixel-only quadruplets: ZMM - on GPU, both CPU and GPU, auto) -# (Patatrack pixel-only triplets: ZMM - on GPU, both CPU and GPU, auto) -# (Patatrack pixel-only quadruplets: TTbar - on GPU, both CPU and GPU, auto) -# (Patatrack pixel-only triplets: TTbar - on GPU, both CPU and GPU, auto) -# (Patatrack ECAL-only: TTbar - on GPU, both CPU and GPU, auto) -# (Patatrack HCAL-only: TTbar - on GPU, both CPU and GPU, auto) -# (Patatrack full reco with pixel quadruplets: TTbar - on GPU, both CPU and GPU, auto) -# (Patatrack full reco with pixel triplets: TTbar - on GPU, both CPU and GPU, auto) +# mc 2018 (Patatrack pixel-only quadruplets: ZMM - on GPU, both CPU and GPU, profiling) +# (Patatrack pixel-only triplets: ZMM - on GPU, both CPU and GPU, profiling) +# (Patatrack pixel-only quadruplets: TTbar - on GPU, both CPU and GPU, profiling) +# (Patatrack pixel-only triplets: TTbar - on GPU, both CPU and GPU, profiling) +# (Patatrack ECAL-only: TTbar - on GPU, both CPU and GPU, profiling) +# (Patatrack HCAL-only: TTbar - on GPU, both CPU and GPU, profiling) +# (Patatrack full reco with pixel quadruplets: TTbar - on GPU, both CPU and GPU, profiling) +# (Patatrack full reco with pixel triplets: TTbar - on GPU, both CPU and GPU, profiling) +# mc 2021 (Patatrack pixel-only quadruplets: ZMM - on GPU, both CPU and GPU, profiling) +# (Patatrack pixel-only triplets: ZMM - on GPU, both CPU and GPU, profiling) +# (Patatrack pixel-only quadruplets: TTbar - on GPU, both CPU and GPU, profiling) +# (Patatrack pixel-only triplets: TTbar - on GPU, both CPU and GPU, profiling) +# (Patatrack ECAL-only: TTbar - on GPU, both CPU and GPU, profiling) +# (Patatrack HCAL-only: TTbar - on GPU, both CPU and GPU, profiling) +# (Patatrack full reco with pixel quadruplets: TTbar - on GPU, both CPU and GPU, profiling) +# (Patatrack full reco with pixel triplets: TTbar - on GPU, both CPU and GPU, profiling) numWFIB = [ - 10842.502, # 10842.503,10842.504, - 10842.506, # 10842.507,10842.508, - 10824.502, # 10824.503,10824.504, - 10824.506, # 10824.507,10824.508, - 10824.512, # 10824.513,10824.514, - 10824.522, # 10824.523,10824.524, - 10824.592, # 10824.593,10824.594, - 10824.596, # 10824.597,10824.598, - 11650.502, # 11650.503,11650.504, - 11650.506, # 11650.507,11650.508, - 11634.502, # 11634.503,11634.504, - 11634.506, # 11634.507,11634.508, - 11634.512, # 11634.513,11634.514, - 11634.522, # 11634.523,11634.524 - 11634.592, # 11634.593,11634.594, - 11634.596, # 11634.597,11634.598, + 10842.502, # 10842.503, 10842.504, + 10842.506, # 10842.507, 10842.508, + 10824.502, # 10824.503, 10824.504, + 10824.506, # 10824.507, 10824.508, + 10824.512, 10824.513, # 10824.514, + 10824.522, # 10824.523, 10824.524, + 10824.592, # 10824.593, 10824.594, + 10824.596, # 10824.597, 10824.598, + 11650.502, # 11650.503, 11650.504, + 11650.506, # 11650.507, 11650.508, + 11634.502, # 11634.503, 11634.504, + 11634.506, # 11634.507, 11634.508, + 11634.512, 11634.513, # 11634.514, + 11634.522, # 11634.523, 11634.524, + 11634.592, # 11634.593, 11634.594, + 11634.596, # 11634.597, 11634.598, ] for numWF in numWFIB: if not numWF in _upgrade_workflows: continue diff --git a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py index 9da4779247485..05e0f65b24534 100644 --- a/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py +++ b/Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py @@ -682,12 +682,12 @@ def setup_(self, step, stepName, stepDict, k, properties): upgradeWFs['PatatrackECALOnlyGPUValidation'] = PatatrackWorkflow( digi = { '--accelerators': 'gpu-nvidia', - '--procModifiers': 'gpu,gpuValidationEcal' + '--procModifiers': 'gpu' }, reco = { '-s': 'RAW2DIGI:RawToDigi_ecalOnly,RECO:reconstruction_ecalOnly,VALIDATION:@ecalOnlyValidation,DQM:@ecalOnly', '--accelerators': 'gpu-nvidia', - '--procModifiers': 'gpu,gpuValidationEcal' + '--procModifiers': 'gpuValidation' }, harvest = { '-s': 'HARVESTING:@ecalOnlyValidation+@ecal'