Skip to content

Commit 59678ad

Browse files
[Bench] Add TorchLinearKernelSize benchmark
1 parent 9863664 commit 59678ad

File tree

2 files changed

+69
-0
lines changed

2 files changed

+69
-0
lines changed

devops/scripts/benchmarks/benches/compute.py

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -385,6 +385,46 @@ def createTorchSlmSizeBench(variant_name: str, **kwargs):
385385
),
386386
]
387387

388+
# Add TorchLinearKernelSize benchmarks
389+
for runtime in filter(lambda x: x != RUNTIMES.UR, RUNTIMES):
390+
391+
def createTorchLinearKernelSizeBench(variant_name: str, **kwargs):
392+
return TorchLinearKernelSize(
393+
self,
394+
runtime,
395+
variant_name,
396+
PROFILERS.TIMER,
397+
**kwargs,
398+
)
399+
400+
benches += [
401+
createTorchLinearKernelSizeBench(
402+
"array32",
403+
kernelBatchSize=512,
404+
kernelSize=32,
405+
),
406+
createTorchLinearKernelSizeBench(
407+
"array128",
408+
kernelBatchSize=512,
409+
kernelSize=128,
410+
),
411+
createTorchLinearKernelSizeBench(
412+
"array512",
413+
kernelBatchSize=512,
414+
kernelSize=512,
415+
),
416+
createTorchLinearKernelSizeBench(
417+
"array1024",
418+
kernelBatchSize=512,
419+
kernelSize=1024,
420+
),
421+
createTorchLinearKernelSizeBench(
422+
"array5120",
423+
kernelBatchSize=512,
424+
kernelSize=5120,
425+
),
426+
]
427+
388428
# Add UR-specific benchmarks
389429
benches += [
390430
# TODO: multithread_benchmark_ur fails with segfault
@@ -916,6 +956,20 @@ def __init__(
916956
)
917957

918958

959+
class TorchLinearKernelSize(TorchBenchmark):
960+
def __init__(
961+
self, suite, runtime: RUNTIMES, variant_name: str, profiler_type, **kwargs
962+
):
963+
super().__init__(
964+
suite,
965+
runtime,
966+
"KernelSubmitLinearKernelSize",
967+
variant_name,
968+
profiler_type,
969+
**kwargs,
970+
)
971+
972+
919973
class QueueInOrderMemcpy(ComputeBenchmark):
920974
def __init__(self, bench, isCopyOnly, source, destination, size, profiler_type):
921975
self._is_copy_only = isCopyOnly

devops/scripts/benchmarks/tests/test_integration.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,11 @@ def test_torch_l0(self):
199199
"KernelSubmitSlmSize small",
200200
{"pytorch", "L0"},
201201
)
202+
self._checkCase(
203+
"torch_benchmark_l0 kernelBatchSize 512, kernelSize 32",
204+
"KernelSubmitLinearKernelSize array32",
205+
{"pytorch", "L0"},
206+
)
202207

203208
def test_torch_sycl(self):
204209
self._checkCase(
@@ -211,6 +216,11 @@ def test_torch_sycl(self):
211216
"KernelSubmitSlmSize max",
212217
{"pytorch", "SYCL"},
213218
)
219+
self._checkCase(
220+
"torch_benchmark_sycl kernelBatchSize 512, kernelSize 5120",
221+
"KernelSubmitLinearKernelSize array5120",
222+
{"pytorch", "SYCL"},
223+
)
214224

215225
def test_torch_syclpreview(self):
216226
self._checkCase(
@@ -223,6 +233,11 @@ def test_torch_syclpreview(self):
223233
"KernelSubmitSlmSize medium",
224234
{"pytorch", "SYCL"},
225235
)
236+
self._checkCase(
237+
"torch_benchmark_syclpreview kernelBatchSize 512, kernelSize 512",
238+
"KernelSubmitLinearKernelSize array512",
239+
{"pytorch", "SYCL"},
240+
)
226241

227242

228243
if __name__ == "__main__":

0 commit comments

Comments
 (0)