Files
TheRock/rocm-systems/experimental/python/perfxpert/tests/benchmarks/test_tritonbench_runner.py
T
derek.holloway 7502bf64a4
CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
Flatten subprojects into a single base monorepo
2026-09-02 16:34:47 -07:00

41 lines
1.4 KiB
Python

"""Tests for tritonbench_runner.run + parse."""
import json
from pathlib import Path
import pytest
from tests.benchmarks.tritonbench_runner import parse_tritonbench_output, RunResult
FIXTURE = Path(__file__).parent / "fixtures" / "tritonbench_sample.json"
def test_parse_returns_run_results():
raw = FIXTURE.read_text() if FIXTURE.exists() else _sample_raw()
results = parse_tritonbench_output(raw)
assert all(isinstance(r, RunResult) for r in results)
assert len(results) >= 3
def test_parse_extracts_kernel_id_baseline_optimized_ns():
raw = _sample_raw()
results = parse_tritonbench_output(raw)
r = results[0]
assert r.kernel_id
assert r.baseline_ns > 0
assert isinstance(r.analysis_succeeded, bool)
assert isinstance(r.recommendation_count, int)
def _sample_raw() -> str:
return json.dumps({
"suite": "tritonbench-rocm",
"mode": "analysis_only",
"results": [
{"kernel": "matmul_f16_256x256", "baseline_ns": 1_000_000, "analysis_succeeded": True, "recommendation_count": 2, "report_path": "/tmp/matmul.json"},
{"kernel": "softmax_f32_1024", "baseline_ns": 500_000, "analysis_succeeded": True, "recommendation_count": 1, "report_path": "/tmp/softmax.json"},
{"kernel": "layernorm_f16_4096", "baseline_ns": 800_000, "analysis_succeeded": False, "recommendation_count": 0, "report_path": None},
],
})