fa903cf4f7
This PR removes the suite-wide TIRx compute-capability gate and localizes hardware skips to CUDA codegen and tile-primitive tests. It keeps the original test parameterization unchanged, allowing parser, printer, IR, transform, and other non-hardware TIRx tests to run in regular CI while device-dependent cases are skipped when SM100 hardware is unavailable. CUDA codegen helpers use explicit target architectures where needed, and the run-only benchmark utility tests retain a local SM100 gate. This intentionally avoids adding separate compile/run parameter cases. A follow-up PR can audit slow frontend execution tests and define a focused runtime regression budget for real TIRx kernels. Local validation: - `pytest -n auto -m "not gpu" tests/python/tirx`: 486 passed, 79 skipped. - `pytest -n auto -m gpu tests/python/tirx` without matching hardware: 1509 skipped. - Pre-commit passed on all changed files.
37 lines
1.3 KiB
Python
37 lines
1.3 KiB
Python
# Licensed to the Apache Software Foundation (ASF) under one
|
|
# or more contributor license agreements. See the NOTICE file
|
|
# distributed with this work for additional information
|
|
# regarding copyright ownership. The ASF licenses this file
|
|
# to you under the Apache License, Version 2.0 (the
|
|
# "License"); you may not use this file except in compliance
|
|
# with the License. You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing,
|
|
# software distributed under the License is distributed on an
|
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
# KIND, either express or implied. See the License for the
|
|
# specific language governing permissions and limitations
|
|
# under the License.
|
|
"""Hardware requirements for TIRx codegen tests."""
|
|
|
|
from pathlib import Path
|
|
|
|
import pytest
|
|
|
|
from tvm.testing import env
|
|
|
|
|
|
def pytest_collection_modifyitems(items):
|
|
if env.has_cuda_compute(10):
|
|
return
|
|
suite_root = Path(__file__).resolve().parent
|
|
skip = pytest.mark.skip(reason="requires a CUDA compute capability 10.0 device")
|
|
for item in items:
|
|
if (
|
|
Path(item.path).resolve().is_relative_to(suite_root)
|
|
and item.get_closest_marker("gpu") is not None
|
|
):
|
|
item.add_marker(skip)
|