@@ -39,8 +39,10 @@ def name(self):
3939
4040    def  benchmarks (self ) ->  list [Benchmark ]:
4141        return  [
42-             GromacsBenchmark (self , "0006" , "pme" ),
43-             GromacsBenchmark (self , "0192" , "rf" ),
42+             GromacsBenchmark (self , "0006" , "pme" , "graphs" ),
43+             GromacsBenchmark (self , "0006" , "pme" , "eager" ),
44+             GromacsBenchmark (self , "0192" , "rf" , "graphs" ),
45+             GromacsBenchmark (self , "0192" , "rf" , "eager" ),
4446        ]
4547
4648    def  setup (self ):
@@ -87,13 +89,14 @@ def teardown(self):
8789
8890
8991class  GromacsBenchmark (Benchmark ):
90-     def  __init__ (self , suite , model , type ):
92+     def  __init__ (self , suite , model , type ,  option ):
9193        self .suite  =  suite 
9294        self .model  =  model   # The model name (e.g., "0001.5") 
9395        self .type  =  type 
9496        self .gromacs_src  =  suite .gromacs_src 
9597        self .grappa_dir  =  suite .grappa_dir 
9698        self .gmx_path  =  suite .gromacs_build_path  /  "bin"  /  "gmx" 
99+         self .option  =  option 
97100
98101        if  self .type  ==  "pme" :
99102            self .extra_args  =  [
@@ -107,12 +110,15 @@ def __init__(self, suite, model, type):
107110            self .extra_args  =  []
108111
109112    def  name (self ):
110-         return  f"gromacs-{ self .model }  -{ self .type }  " 
113+         return  f"gromacs-{ self .model }  -{ self .type } - { self . option }  " 
111114
112115    def  setup (self ):
113116        if  self .type  !=  "rf"  and  self .type  !=  "pme" :
114117            raise  ValueError (f"Unknown benchmark type: { self .type }  " )
115118
119+         if  self .option  !=  "graphs"  and  self .option  !=  "eager" :
120+             raise  ValueError (f"Unknown option: { self .option }  " )
121+ 
116122        if  not  self .gmx_path .exists ():
117123            raise  FileNotFoundError (f"gmx executable not found at { self .gmx_path }  " )
118124
@@ -143,12 +149,10 @@ def setup(self):
143149    def  run (self , env_vars ):
144150        model_dir  =  self .grappa_dir  /  self .model 
145151
146-         env_vars .update (
147-             {
148-                 "SYCL_CACHE_PERSISTENT" : "1" ,
149-                 "GMX_CUDA_GRAPH" : "1" ,
150-             }
151-         )
152+         env_vars .update ({"SYCL_CACHE_PERSISTENT" : "1" })
153+ 
154+         if  self .option  ==  "graphs" :
155+             env_vars .update ({"GMX_CUDA_GRAPH" : "1" })
152156
153157        # Run benchmark 
154158        command  =  [
0 commit comments