[ROCm][CI] Mirror the three TurboQuant evaluation groups on MI355 (#58282)
Signed-off-by: Andreas Karatzas <akaratza@amd.com> Co-authored-by: OpenAI Codex <noreply@openai.com>
Andreas Karatzas committed
Sep 23, 2026 at 02:37 UTC
a9f07d0bc59604d3979ba0f232469f4a80eb8175
8 files changed
+183
.buildkite/test-amd.yaml
+78
@@ -3869,6 +3869,84 @@ steps:
3869
- uv pip install --system 'evalscope==1.10.0'
3870
- pytest -s -v evals/qwen4_exp/test_accuracy.py --config-list-file=configs/models-rocm.txt
3871
3872
+- label: ":amd: (MI355) LM Eval TurboQuant k8v4"
3873
+ timeout_in_minutes: 30
3874
+ mirror_hardwares: [amdexperimental, amdproduction, amdgfx950nightly, amdmi355]
3875
+ dind: false
3876
+ agent_pool: mi355_1
3877
+ num_gpus: 1
3878
+ optional: true
3879
+ working_dir: "/vllm-workspace/tests"
3880
+ source_file_dependencies:
3881
+ - tests/evals/gsm8k/
3882
+ - tests/utils.py
3883
+ - tests/conftest.py
3884
+ - vllm/model_executor/layers/quantization/turboquant/
3885
+ - vllm/v1/attention/backends/turboquant_attn.py
3886
+ - vllm/v1/attention/backends/triton_attn.py
3887
+ - vllm/v1/attention/ops/triton_unified_attention.py
3888
+ - vllm/v1/attention/selector.py
3889
+ - vllm/v1/attention/ops/triton_turboquant_decode.py
3890
+ - vllm/v1/attention/ops/triton_turboquant_store.py
3891
+ - vllm/v1/attention/ops/flydsl_turboquant_decode.py
3892
+ - vllm/v1/attention/ops/flydsl_kernels/
3893
+ - vllm/v1/attention/ops/turboquant_soa/
3894
+ - vllm/platforms/rocm.py
3895
+ commands:
3896
+ - pytest -s -v evals/gsm8k/test_gsm8k_correctness.py --config-list-file=evals/gsm8k/configs/models-turboquant-k8v4-rocm.txt
3897
+
3898
+- label: ":amd: (MI355) LM Eval TurboQuant t4nc"
3899
+ timeout_in_minutes: 30
3900
+ mirror_hardwares: [amdexperimental, amdproduction, amdgfx950nightly, amdmi355]
3901
+ dind: false
3902
+ agent_pool: mi355_1
3903
+ num_gpus: 1
3904
+ optional: true
3905
+ working_dir: "/vllm-workspace/tests"
3906
+ source_file_dependencies:
3907
+ - tests/evals/gsm8k/
3908
+ - tests/utils.py
3909
+ - tests/conftest.py
3910
+ - vllm/model_executor/layers/quantization/turboquant/
3911
+ - vllm/v1/attention/backends/turboquant_attn.py
3912
+ - vllm/v1/attention/backends/triton_attn.py
3913
+ - vllm/v1/attention/ops/triton_unified_attention.py
3914
+ - vllm/v1/attention/selector.py
3915
+ - vllm/v1/attention/ops/triton_turboquant_decode.py
3916
+ - vllm/v1/attention/ops/triton_turboquant_store.py
3917
+ - vllm/v1/attention/ops/flydsl_turboquant_decode.py
3918
+ - vllm/v1/attention/ops/flydsl_kernels/
3919
+ - vllm/v1/attention/ops/turboquant_soa/
3920
+ - vllm/platforms/rocm.py
3921
+ commands:
3922
+ - pytest -s -v evals/gsm8k/test_gsm8k_correctness.py --config-list-file=evals/gsm8k/configs/models-turboquant-t4nc-rocm.txt
3923
+
3924
+- label: ":amd: (MI355) LM Eval TurboQuant k3v4nc"
3925
+ timeout_in_minutes: 30
3926
+ mirror_hardwares: [amdexperimental, amdproduction, amdgfx950nightly, amdmi355]
3927
+ dind: false
3928
+ agent_pool: mi355_1
3929
+ num_gpus: 1
3930
+ optional: true
3931
+ working_dir: "/vllm-workspace/tests"
3932
+ source_file_dependencies:
3933
+ - tests/evals/gsm8k/
3934
+ - tests/utils.py
3935
+ - tests/conftest.py
3936
+ - vllm/model_executor/layers/quantization/turboquant/
3937
+ - vllm/v1/attention/backends/turboquant_attn.py
3938
+ - vllm/v1/attention/backends/triton_attn.py
3939
+ - vllm/v1/attention/ops/triton_unified_attention.py
3940
+ - vllm/v1/attention/selector.py
3941
+ - vllm/v1/attention/ops/triton_turboquant_decode.py
3942
+ - vllm/v1/attention/ops/triton_turboquant_store.py
3943
+ - vllm/v1/attention/ops/flydsl_turboquant_decode.py
3944
+ - vllm/v1/attention/ops/flydsl_kernels/
3945
+ - vllm/v1/attention/ops/turboquant_soa/
3946
+ - vllm/platforms/rocm.py
3947
+ commands:
3948
+ - pytest -s -v evals/gsm8k/test_gsm8k_correctness.py --config-list-file=evals/gsm8k/configs/models-turboquant-k3v4nc-rocm.txt
3949
+
3950
- label: ":amd: (MI355) LM Eval Small Models Distributed"
3951
timeout_in_minutes: 55
3952
mirror_hardwares: [amdexperimental, amdproduction, amdgfx950nightly, amdmi355]
.buildkite/test_areas/lm_eval.yaml
+84
@@ -646,6 +646,34 @@ steps:
646
- vllm/v1/attention/ops/triton_turboquant_store.py
647
commands:
648
- pytest -s -v evals/gsm8k/test_gsm8k_correctness.py --config-list-file=evals/gsm8k/configs/models-turboquant-k8v4.txt
649
+ mirror:
650
+ amd:
651
+ label: ":amd: (MI355) LM Eval TurboQuant k8v4"
652
+ dind: false
653
+ device: mi355_1
654
+ num_devices: 1
655
+ timeout_in_minutes: 30
656
+ working_dir: /vllm-workspace/tests
657
+ depends_on:
658
+ - image-build-amd
659
+ source_file_dependencies:
660
+ - .buildkite/test_areas/lm_eval.yaml
661
+ - tests/evals/gsm8k/
662
+ - tests/utils.py
663
+ - tests/conftest.py
664
+ - vllm/model_executor/layers/quantization/turboquant/
665
+ - vllm/v1/attention/backends/turboquant_attn.py
666
+ - vllm/v1/attention/backends/triton_attn.py
667
+ - vllm/v1/attention/ops/triton_unified_attention.py
668
+ - vllm/v1/attention/selector.py
669
+ - vllm/v1/attention/ops/triton_turboquant_decode.py
670
+ - vllm/v1/attention/ops/triton_turboquant_store.py
671
+ - vllm/v1/attention/ops/flydsl_turboquant_decode.py
672
+ - vllm/v1/attention/ops/flydsl_kernels/
673
+ - vllm/v1/attention/ops/turboquant_soa/
674
+ - vllm/platforms/rocm.py
675
+ commands:
676
+ - pytest -s -v evals/gsm8k/test_gsm8k_correctness.py --config-list-file=evals/gsm8k/configs/models-turboquant-k8v4-rocm.txt
677
678
- label: ":nvidia: (H200 MIG 18GB) LM Eval TurboQuant t4nc"
679
key: lm-eval-turboquant-t4nc
@@ -658,6 +686,34 @@ steps:
686
- vllm/v1/attention/ops/triton_turboquant_store.py
687
commands:
688
- pytest -s -v evals/gsm8k/test_gsm8k_correctness.py --config-list-file=evals/gsm8k/configs/models-turboquant-t4nc.txt
689
+ mirror:
690
+ amd:
691
+ label: ":amd: (MI355) LM Eval TurboQuant t4nc"
692
+ dind: false
693
+ device: mi355_1
694
+ num_devices: 1
695
+ timeout_in_minutes: 30
696
+ working_dir: /vllm-workspace/tests
697
+ depends_on:
698
+ - image-build-amd
699
+ source_file_dependencies:
700
+ - .buildkite/test_areas/lm_eval.yaml
701
+ - tests/evals/gsm8k/
702
+ - tests/utils.py
703
+ - tests/conftest.py
704
+ - vllm/model_executor/layers/quantization/turboquant/
705
+ - vllm/v1/attention/backends/turboquant_attn.py
706
+ - vllm/v1/attention/backends/triton_attn.py
707
+ - vllm/v1/attention/ops/triton_unified_attention.py
708
+ - vllm/v1/attention/selector.py
709
+ - vllm/v1/attention/ops/triton_turboquant_decode.py
710
+ - vllm/v1/attention/ops/triton_turboquant_store.py
711
+ - vllm/v1/attention/ops/flydsl_turboquant_decode.py
712
+ - vllm/v1/attention/ops/flydsl_kernels/
713
+ - vllm/v1/attention/ops/turboquant_soa/
714
+ - vllm/platforms/rocm.py
715
+ commands:
716
+ - pytest -s -v evals/gsm8k/test_gsm8k_correctness.py --config-list-file=evals/gsm8k/configs/models-turboquant-t4nc-rocm.txt
717
718
- label: ":nvidia: (H200 MIG 18GB) LM Eval TurboQuant k3v4nc"
719
key: lm-eval-turboquant-k3v4nc
@@ -670,6 +726,34 @@ steps:
726
- vllm/v1/attention/ops/triton_turboquant_store.py
727
commands:
728
- pytest -s -v evals/gsm8k/test_gsm8k_correctness.py --config-list-file=evals/gsm8k/configs/models-turboquant-k3v4nc.txt
729
+ mirror:
730
+ amd:
731
+ label: ":amd: (MI355) LM Eval TurboQuant k3v4nc"
732
+ dind: false
733
+ device: mi355_1
734
+ num_devices: 1
735
+ timeout_in_minutes: 30
736
+ working_dir: /vllm-workspace/tests
737
+ depends_on:
738
+ - image-build-amd
739
+ source_file_dependencies:
740
+ - .buildkite/test_areas/lm_eval.yaml
741
+ - tests/evals/gsm8k/
742
+ - tests/utils.py
743
+ - tests/conftest.py
744
+ - vllm/model_executor/layers/quantization/turboquant/
745
+ - vllm/v1/attention/backends/turboquant_attn.py
746
+ - vllm/v1/attention/backends/triton_attn.py
747
+ - vllm/v1/attention/ops/triton_unified_attention.py
748
+ - vllm/v1/attention/selector.py
749
+ - vllm/v1/attention/ops/triton_turboquant_decode.py
750
+ - vllm/v1/attention/ops/triton_turboquant_store.py
751
+ - vllm/v1/attention/ops/flydsl_turboquant_decode.py
752
+ - vllm/v1/attention/ops/flydsl_kernels/
753
+ - vllm/v1/attention/ops/turboquant_soa/
754
+ - vllm/platforms/rocm.py
755
+ commands:
756
+ - pytest -s -v evals/gsm8k/test_gsm8k_correctness.py --config-list-file=evals/gsm8k/configs/models-turboquant-k3v4nc-rocm.txt
757
758
- label: ":nvidia: (H200 MIG 18GB) LM Eval TurboQuant t3nc"
759
key: lm-eval-turboquant-t3nc
tests/evals/gsm8k/configs/Qwen3-4B-TQ-k3v4nc-ROCm.yaml
new
+6
@@ -0,0 +1,6 @@
1
+model_name: "Qwen/Qwen3-4B"
2
+accuracy_threshold: 0.78
3
+num_questions: 1319
4
+num_fewshot: 5
5
+# Triton serves the unquantized boundary layers with TurboQuant-compatible layout.
6
+server_args: "--kv-cache-dtype turboquant_k3v4_nc --max-model-len 4096 --attention-backend TRITON_ATTN"
tests/evals/gsm8k/configs/Qwen3-4B-TQ-k8v4-ROCm.yaml
new
+6
@@ -0,0 +1,6 @@
1
+model_name: "Qwen/Qwen3-4B"
2
+accuracy_threshold: 0.80
3
+num_questions: 1319
4
+num_fewshot: 5
5
+# Triton serves the unquantized boundary layers with TurboQuant-compatible layout.
6
+server_args: "--kv-cache-dtype turboquant_k8v4 --max-model-len 4096 --attention-backend TRITON_ATTN"
tests/evals/gsm8k/configs/Qwen3-4B-TQ-t4nc-ROCm.yaml
new
+6
@@ -0,0 +1,6 @@
1
+model_name: "Qwen/Qwen3-4B"
2
+accuracy_threshold: 0.80
3
+num_questions: 1319
4
+num_fewshot: 5
5
+# Triton serves the unquantized boundary layers with TurboQuant-compatible layout.
6
+server_args: "--kv-cache-dtype turboquant_4bit_nc --max-model-len 4096 --attention-backend TRITON_ATTN"
tests/evals/gsm8k/configs/models-turboquant-k3v4nc-rocm.txt
new
+1
@@ -0,0 +1 @@
1
+Qwen3-4B-TQ-k3v4nc-ROCm.yaml
tests/evals/gsm8k/configs/models-turboquant-k8v4-rocm.txt
new
+1
@@ -0,0 +1 @@
1
+Qwen3-4B-TQ-k8v4-ROCm.yaml
tests/evals/gsm8k/configs/models-turboquant-t4nc-rocm.txt
new
+1
@@ -0,0 +1 @@
1
+Qwen3-4B-TQ-t4nc-ROCm.yaml