@@ -2489,9 +2489,10 @@ def testGPUStepChainsTasks(self):
2489
2489
testArguments [s ]['ConfigCacheID' ] = configDocs [s ]
2490
2490
testArguments ['Step2' ]['KeepOutput' ] = False
2491
2491
2492
- gpuParams = {"GPUMemoryMB" : 1234 , "CUDARuntime" : "11.2.3" , "CUDACapabilities" : ["7.5" , "8.0" ]}
2493
- testArguments ['Step1' ].update ({"RequiresGPU" : "optional" , "GPUParams" : json .dumps (gpuParams )})
2494
- testArguments ['Step2' ].update ({"RequiresGPU" : "required" , "GPUParams" : json .dumps (gpuParams )})
2492
+ gpuParams1 = {"GPUMemoryMB" : 1234 , "CUDARuntime" : "11.2.3" , "CUDACapabilities" : ["7.5" , "8.0" ]}
2493
+ testArguments ['Step1' ].update ({"RequiresGPU" : "optional" , "GPUParams" : json .dumps (gpuParams1 )})
2494
+ gpuParams2 = {"GPUMemoryMB" : 2345 , "CUDARuntime" : "9.6" , "CUDACapabilities" : ["7.4" ]}
2495
+ testArguments ['Step2' ].update ({"RequiresGPU" : "required" , "GPUParams" : json .dumps (gpuParams2 )})
2495
2496
factory = StepChainWorkloadFactory ()
2496
2497
testWorkload = factory .factoryWorkloadConstruction ("TestWorkload" , testArguments )
2497
2498
@@ -2503,8 +2504,8 @@ def testGPUStepChainsTasks(self):
2503
2504
2504
2505
# validate GPU parameters
2505
2506
self .assertEqual (testArguments ['GPUParams' ], json .dumps (None ))
2506
- self .assertEqual (testArguments ["Step1" ]['GPUParams' ], json .dumps (gpuParams ))
2507
- self .assertEqual (testArguments ["Step2" ]['GPUParams' ], json .dumps (gpuParams ))
2507
+ self .assertEqual (testArguments ["Step1" ]['GPUParams' ], json .dumps (gpuParams1 ))
2508
+ self .assertEqual (testArguments ["Step2" ]['GPUParams' ], json .dumps (gpuParams2 ))
2508
2509
self .assertTrue ("GPUParams" not in testArguments ["Step3" ])
2509
2510
2510
2511
for taskName in testWorkload .listAllTaskNames ():
@@ -2520,10 +2521,10 @@ def testGPUStepChainsTasks(self):
2520
2521
elif stepHelper .stepType () == "CMSSW" and taskName == "GENSIM" :
2521
2522
if stepHelper .name () == "cmsRun1" :
2522
2523
self .assertEqual (stepHelper .data .application .gpu .gpuRequired , testArguments ["Step1" ]['RequiresGPU' ])
2523
- self .assertItemsEqual (stepHelper .data .application .gpu .gpuRequirements , gpuParams )
2524
+ self .assertItemsEqual (stepHelper .data .application .gpu .gpuRequirements , gpuParams1 )
2524
2525
elif stepHelper .name () == "cmsRun2" :
2525
2526
self .assertEqual (stepHelper .data .application .gpu .gpuRequired , testArguments ["Step2" ]['RequiresGPU' ])
2526
- self .assertItemsEqual (stepHelper .data .application .gpu .gpuRequirements , gpuParams )
2527
+ self .assertItemsEqual (stepHelper .data .application .gpu .gpuRequirements , gpuParams2 )
2527
2528
elif stepHelper .name () == "cmsRun3" :
2528
2529
self .assertEqual (stepHelper .data .application .gpu .gpuRequired , "forbidden" )
2529
2530
self .assertIsNone (stepHelper .data .application .gpu .gpuRequirements )
@@ -2535,18 +2536,17 @@ def testGPUStepChainsTasks(self):
2535
2536
prodTask = testWorkload .getTask ('GENSIM' )
2536
2537
gpuRequired , gpuRequirements = prodTask .getStepHelper ('cmsRun1' ).getGPUSettings ()
2537
2538
self .assertEqual (gpuRequired , testArguments ["Step1" ]['RequiresGPU' ])
2538
- self .assertItemsEqual (gpuRequirements , gpuParams )
2539
+ self .assertItemsEqual (gpuRequirements , gpuParams1 )
2539
2540
2540
2541
gpuRequired , gpuRequirements = prodTask .getStepHelper ('cmsRun2' ).getGPUSettings ()
2541
2542
self .assertEqual (gpuRequired , testArguments ["Step2" ]['RequiresGPU' ])
2542
- self .assertItemsEqual (gpuRequirements , gpuParams )
2543
+ self .assertItemsEqual (gpuRequirements , gpuParams2 )
2543
2544
2544
2545
gpuRequired , gpuRequirements = prodTask .getStepHelper ('cmsRun3' ).getGPUSettings ()
2545
2546
self .assertEqual (gpuRequired , testArguments ["Step3" ].get ('RequiresGPU' , "forbidden" ))
2546
2547
self .assertIsNone (gpuRequirements )
2547
2548
2548
2549
2549
-
2550
2550
# test assignment with wrong Trust flags
2551
2551
assignDict = {"SiteWhitelist" : ["T2_US_Nebraska" ], "Team" : "The-A-Team" ,
2552
2552
"RequestStatus" : "assigned" }
@@ -2560,18 +2560,18 @@ def testGPUStepChainsTasks(self):
2560
2560
2561
2561
# validate GPU parameters
2562
2562
self .assertEqual (testArguments ['GPUParams' ], json .dumps (None ))
2563
- self .assertEqual (testArguments ["Step1" ]['GPUParams' ], json .dumps (gpuParams ))
2564
- self .assertEqual (testArguments ["Step2" ]['GPUParams' ], json .dumps (gpuParams ))
2563
+ self .assertEqual (testArguments ["Step1" ]['GPUParams' ], json .dumps (gpuParams1 ))
2564
+ self .assertEqual (testArguments ["Step2" ]['GPUParams' ], json .dumps (gpuParams2 ))
2565
2565
self .assertTrue ("GPUParams" not in testArguments ["Step3" ])
2566
2566
2567
2567
prodTask = testWorkload .getTask ('GENSIM' )
2568
2568
gpuRequired , gpuRequirements = prodTask .getStepHelper ('cmsRun1' ).getGPUSettings ()
2569
2569
self .assertEqual (gpuRequired , testArguments ["Step1" ]['RequiresGPU' ])
2570
- self .assertItemsEqual (gpuRequirements , gpuParams )
2570
+ self .assertItemsEqual (gpuRequirements , gpuParams1 )
2571
2571
2572
2572
gpuRequired , gpuRequirements = prodTask .getStepHelper ('cmsRun2' ).getGPUSettings ()
2573
2573
self .assertEqual (gpuRequired , testArguments ["Step2" ]['RequiresGPU' ])
2574
- self .assertItemsEqual (gpuRequirements , gpuParams )
2574
+ self .assertItemsEqual (gpuRequirements , gpuParams2 )
2575
2575
2576
2576
gpuRequired , gpuRequirements = prodTask .getStepHelper ('cmsRun3' ).getGPUSettings ()
2577
2577
self .assertEqual (gpuRequired , testArguments ["Step3" ].get ('RequiresGPU' , "forbidden" ))
0 commit comments