@@ -97,7 +97,7 @@ def setup(self) -> None:
9797 run (configure_command , add_sycl = True )
9898
9999 run (
100- f"cmake --build { build_path } -j { options .build_jobs } -- -k -i " ,
100+ f"cmake --build { build_path } -j { options .build_jobs } " ,
101101 add_sycl = True ,
102102 )
103103
@@ -310,23 +310,17 @@ def __init__(self, bench, name, test, runtime: RUNTIMES = None):
310310 # Subclasses MUST set both `self.iterations_regular` and
311311 # `self.iterations_trace` (positive ints) in their __init__ before
312312 # calling super().__init__(). The base class enforces this.
313- if (
314- not hasattr (self , "iterations_regular" )
315- or not isinstance (getattr (self , "iterations_regular" , None ), int )
316- or getattr (self , "iterations_regular" , 0 ) <= 0
317- ):
318- raise ValueError (
319- f"{ self .bench_name } : subclasses must set `iterations_regular` (positive int) before calling super().__init__"
320- )
321313
322- if (
323- not hasattr (self , "iterations_trace" )
324- or not isinstance (getattr (self , "iterations_trace" , None ), int )
325- or getattr (self , "iterations_trace" , 0 ) <= 0
326- ):
327- raise ValueError (
328- f"{ self .bench_name } : subclasses must set `iterations_trace` (positive int) before calling super().__init__"
329- )
314+ self ._validate_attr ("iterations_regular" )
315+ self ._validate_attr ("iterations_trace" )
316+
317+ def get_iters (self , run_trace : TracingType ):
318+ """Returns the number of iterations to run for the given tracing type."""
319+ return (
320+ self .iterations_trace
321+ if run_trace != TracingType .NONE
322+ else self .iterations_regular
323+ )
330324
331325 def supported_runtimes (self ) -> list [RUNTIMES ]:
332326 """Base runtimes supported by this benchmark, can be overridden."""
@@ -452,6 +446,16 @@ def parse_output(self, output):
452446 def teardown (self ):
453447 return
454448
449+ def _validate_attr (self , attr_name : str ):
450+ if (
451+ not hasattr (self , attr_name )
452+ or not isinstance (getattr (self , attr_name , None ), int )
453+ or getattr (self , attr_name , 0 ) <= 0
454+ ):
455+ raise ValueError (
456+ f"{ self .bench_name } : subclasses must set `{ attr_name } ` (positive int) before calling super().__init__"
457+ )
458+
455459
456460class SubmitKernel (ComputeBenchmark ):
457461 def __init__ (
@@ -541,11 +545,7 @@ def range(self) -> tuple[float, float]:
541545 return (0.0 , None )
542546
543547 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
544- iters = (
545- self .iterations_trace
546- if run_trace != TracingType .NONE
547- else self .iterations_regular
548- )
548+ iters = self .get_iters (run_trace )
549549 return [
550550 f"--iterations={ iters } " ,
551551 f"--Ioq={ self .ioq } " ,
@@ -605,11 +605,7 @@ def get_tags(self):
605605 return ["memory" , "submit" , "latency" , "SYCL" , "micro" ]
606606
607607 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
608- iters = (
609- self .iterations_trace
610- if run_trace != TracingType .NONE
611- else self .iterations_regular
612- )
608+ iters = self .get_iters (run_trace )
613609 return [
614610 f"--iterations={ iters } " ,
615611 f"--ioq={ self .ioq } " ,
@@ -650,11 +646,7 @@ def get_tags(self):
650646 return ["memory" , "latency" , "SYCL" , "micro" ]
651647
652648 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
653- iters = (
654- self .iterations_trace
655- if run_trace != TracingType .NONE
656- else self .iterations_regular
657- )
649+ iters = self .get_iters (run_trace )
658650 return [
659651 f"--iterations={ iters } " ,
660652 f"--IsCopyOnly={ self .isCopyOnly } " ,
@@ -692,11 +684,7 @@ def get_tags(self):
692684 return ["memory" , "latency" , "SYCL" , "micro" ]
693685
694686 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
695- iters = (
696- self .iterations_trace
697- if run_trace != TracingType .NONE
698- else self .iterations_regular
699- )
687+ iters = self .get_iters (run_trace )
700688 return [
701689 f"--iterations={ iters } " ,
702690 f"--sourcePlacement={ self .source } " ,
@@ -735,11 +723,7 @@ def get_tags(self):
735723 return ["memory" , "throughput" , "SYCL" , "micro" ]
736724
737725 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
738- iters = (
739- self .iterations_trace
740- if run_trace != TracingType .NONE
741- else self .iterations_regular
742- )
726+ iters = self .get_iters (run_trace )
743727 return [
744728 f"--iterations={ iters } " ,
745729 f"--type={ self .type } " ,
@@ -775,11 +759,7 @@ def get_tags(self):
775759 return ["math" , "throughput" , "SYCL" , "micro" ]
776760
777761 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
778- iters = (
779- self .iterations_trace
780- if run_trace != TracingType .NONE
781- else self .iterations_regular
782- )
762+ iters = self .get_iters (run_trace )
783763 return [
784764 f"--iterations={ iters } " ,
785765 "--numberOfElementsX=512" ,
@@ -873,11 +853,7 @@ def get_tags(self):
873853 return ["memory" , "latency" , runtime_to_tag_name (self .runtime ), "micro" ]
874854
875855 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
876- iters = (
877- self .iterations_trace
878- if run_trace != TracingType .NONE
879- else self .iterations_regular
880- )
856+ iters = self .get_iters (run_trace )
881857 return [
882858 f"--iterations={ iters } " ,
883859 "--Ioq=1" ,
@@ -934,11 +910,7 @@ def get_tags(self):
934910 ]
935911
936912 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
937- iters = (
938- self .iterations_trace
939- if run_trace != TracingType .NONE
940- else self .iterations_regular
941- )
913+ iters = self .get_iters (run_trace )
942914 return [
943915 f"--iterations={ iters } " ,
944916 f"--numKernels={ self .numKernels } " ,
@@ -1002,11 +974,7 @@ def get_tags(self):
1002974 ]
1003975
1004976 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
1005- iters = (
1006- self .iterations_trace
1007- if run_trace != TracingType .NONE
1008- else self .iterations_regular
1009- )
977+ iters = self .get_iters (run_trace )
1010978 return [
1011979 f"--iterations={ iters } " ,
1012980 f"--NumKernels={ self .numKernels } " ,
@@ -1052,11 +1020,7 @@ def get_tags(self):
10521020 return [runtime_to_tag_name (self .runtime ), "micro" , "latency" , "submit" ]
10531021
10541022 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
1055- iters = (
1056- self .iterations_trace
1057- if run_trace != TracingType .NONE
1058- else self .iterations_regular
1059- )
1023+ iters = self .get_iters (run_trace )
10601024 return [
10611025 f"--iterations={ iters } " ,
10621026 f"--wgs={ self .wgs } " ,
@@ -1108,11 +1072,7 @@ def get_tags(self):
11081072 return [runtime_to_tag_name (self .runtime ), "micro" , "latency" , "submit" ]
11091073
11101074 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
1111- iters = (
1112- self .iterations_trace
1113- if run_trace != TracingType .NONE
1114- else self .iterations_regular
1115- )
1075+ iters = self .get_iters (run_trace )
11161076 return [
11171077 f"--iterations={ iters } " ,
11181078 f"--count={ self .count } " ,
@@ -1172,11 +1132,7 @@ def description(self) -> str:
11721132 )
11731133
11741134 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
1175- iters = (
1176- self .iterations_trace
1177- if run_trace != TracingType .NONE
1178- else self .iterations_regular
1179- )
1135+ iters = self .get_iters (run_trace )
11801136 return [
11811137 f"--iterations={ iters } " ,
11821138 f"--type={ self .usm_memory_placement } " ,
@@ -1240,11 +1196,7 @@ def description(self) -> str:
12401196 )
12411197
12421198 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
1243- iters = (
1244- self .iterations_trace
1245- if run_trace != TracingType .NONE
1246- else self .iterations_regular
1247- )
1199+ iters = self .get_iters (run_trace )
12481200 return [
12491201 f"--iterations={ iters } " ,
12501202 f"--type={ self .usm_memory_placement } " ,
@@ -1316,11 +1268,7 @@ def get_tags(self):
13161268 ]
13171269
13181270 def bin_args (self , run_trace : TracingType = TracingType .NONE ) -> list [str ]:
1319- iters = (
1320- self .iterations_trace
1321- if run_trace != TracingType .NONE
1322- else self .iterations_regular
1323- )
1271+ iters = self .get_iters (run_trace )
13241272 return [
13251273 f"--iterations={ iters } " ,
13261274 f"--rebuildGraphEveryIter={ self .rebuild_graph_every_iteration } " ,
0 commit comments