@@ -535,8 +535,15 @@ jobs:
535535 # Build executor_runner (needed by CUDA backend e2e tests)
536536 cmake --build cmake-out --target executor_runner
537537
538- # Run CUDA backend Python tests
539- python -m pytest backends/cuda/tests backends/cuda/passes/tests -v -o "addopts="
538+ # Run CUDA backend Python tests. The quantized GEMM kernel suites run
539+ # in unittest-cuda-quantized-gemm; together they do not fit this
540+ # job's timeout.
541+ python -m pytest backends/cuda/tests backends/cuda/passes/tests -v -o "addopts=" \
542+ --ignore=backends/cuda/tests/test_int4_quantized_gemm.py \
543+ --ignore=backends/cuda/tests/test_int5_quantized_gemm.py \
544+ --ignore=backends/cuda/tests/test_int6_quantized_gemm.py \
545+ --ignore=backends/cuda/tests/test_int8_quantized_gemm.py \
546+ --ignore=backends/cuda/tests/test_cuda_graph_timing.py
540547
541548 # Run Qwen 3.5 MoE tests (quantize roundtrip + TurboQuant KV cache + sampler)
542549 python -m pytest examples/models/qwen3_5_moe/test_quantize_roundtrip.py examples/models/qwen3_5_moe/test_turboquant.py examples/models/qwen3_5_moe/test_sampler.py -v -o "addopts="
@@ -545,6 +552,45 @@ jobs:
545552 pip install gguf
546553 python -m pytest examples/models/gemma4_31b/tests/ --ignore=examples/models/gemma4_31b/tests/test_mlx_pipeline.py -v -o "addopts="
547554
555+ unittest-cuda-quantized-gemm :
556+ name : unittest-cuda-quantized-gemm (${{ matrix.shard }})
557+ needs : [changed-files, run-decision]
558+ if : |
559+ contains(needs.changed-files.outputs.changed-files, 'backends/cuda') ||
560+ contains(needs.changed-files.outputs.changed-files, 'backends/aoti') ||
561+ contains(needs.changed-files.outputs.changed-files, '.github/workflows/cuda.yml') ||
562+ needs.run-decision.outputs.is-full-run == 'true'
563+ strategy :
564+ fail-fast : false
565+ matrix :
566+ include :
567+ - shard : int4
568+ tests : backends/cuda/tests/test_int4_quantized_gemm.py
569+ - shard : int5-int6-int8-graph-timing
570+ tests : >-
571+ backends/cuda/tests/test_int5_quantized_gemm.py
572+ backends/cuda/tests/test_int6_quantized_gemm.py
573+ backends/cuda/tests/test_int8_quantized_gemm.py
574+ backends/cuda/tests/test_cuda_graph_timing.py
575+ uses : pytorch/test-infra/.github/workflows/linux_job_v3.yml@main
576+ permissions :
577+ id-token : write
578+ contents : read
579+ with :
580+ timeout : 90
581+ runner : mt-l-x86aavx2-11-41-a10g
582+ gpu-arch-type : cuda
583+ gpu-arch-version : " 13.0"
584+ submodules : recursive
585+ ref : ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || github.sha }}
586+ script : |
587+ set -eux
588+ bash ./install_executorch.sh
589+ conda install -y -c conda-forge 'libstdcxx-ng>=12'
590+ export LD_LIBRARY_PATH=/opt/conda/lib:$LD_LIBRARY_PATH
591+
592+ python -m pytest ${{ matrix.tests }} -v -o "addopts=" --durations=20
593+
548594 unittest-cuda-runtime :
549595 name : unittest-cuda-runtime
550596 needs : [changed-files, run-decision]
0 commit comments