blob: a35e0dbe609f847291e94c23796e5c2d20ce6e9d [file] [log] [blame]
# Copyright 2022 The IREE Authors
#
# Licensed under the Apache License v2.0 with LLVM Exceptions.
# See https://llvm.org/LICENSE.txt for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
load("//build_tools/bazel:build_defs.oss.bzl", "iree_cmake_extra_content")
load("//build_tools/bazel:iree_lit_test.bzl", "iree_lit_test_suite")
package(
features = ["layering_check"],
licenses = ["notice"], # Apache 2.0
)
iree_cmake_extra_content(
content = """
if(NOT IREE_HAL_DRIVER_CUDA)
return()
endif()
if(NOT IREE_HOST_BIN_DIR AND NOT IREE_TARGET_BACKEND_CUDA)
return()
endif()
""",
inline = True,
)
iree_lit_test_suite(
name = "lit",
srcs = [
# TODO(#15892): reductions have flakes and need to be triaged.
# "reduction.mlir",
# "reduction_eltwise.mlir",
# "reduction_v2.mlir",
# "reduction_v2_uneven.mlir",
# "softmax.mlir",
# "softmax_v2.mlir",
# First few ops of softmax only, acts as a proxy example.
# "softmax_partial.mlir",
],
cfg = "//tests:lit.cfg.py",
# transform dialect spec files are MLIR files that specify a transformation,
# they need to be included as data.
data = [
"mma_reduction_layout_analysis_codegen_spec.mlir",
"mma_reduction_layout_analysis_dispatch_spec.mlir",
"mma_using_layout_analysis_codegen_spec.mlir",
"reduction_codegen_spec.mlir",
"reduction_eltwise_codegen_spec.mlir",
"reduction_v2_codegen_spec.mlir",
"softmax_codegen_spec.mlir",
"softmax_v2_codegen_spec.mlir",
#
# FIXME: This must be used with the custom dispatch region formation
# because IREE's does not fuse the 6 ops softmax version even with
# --iree-flow-fuse-multi-use.
#
"softmax_dispatch_spec.mlir",
# First few ops of softmax only, acts as a proxy example.
"softmax_partial_codegen_spec.mlir",
],
tags = [
# CUDA cuInit fails with sanitizer on.
"noasan",
"nomsan",
"notsan",
"noubsan",
"requires-gpu-nvidia",
"driver=cuda",
],
tools = [
"//tools:iree-compile",
"//tools:iree-opt",
"//tools:iree-run-module",
"@llvm-project//llvm:FileCheck",
],
)
iree_lit_test_suite(
name = "sm80_lit",
srcs = [
"double_mma_layout_analysis.mlir",
"mma_elemwise_layout_analysis.mlir",
"mma_reduction_layout_analysis.mlir",
"mma_using_layout_analysis.mlir",
],
cfg = "//tests:lit.cfg.py",
# transform dialect spec files are MLIR files that specify a transformation,
# they need to be included as data.
data = [
"double_mma_layout_analysis_codegen_spec.mlir",
"double_mma_layout_analysis_dispatch_spec.mlir",
"mma_elemwise_layout_analysis_codegen_spec.mlir",
"mma_reduction_layout_analysis_codegen_spec.mlir",
"mma_reduction_layout_analysis_dispatch_spec.mlir",
"mma_using_layout_analysis_codegen_spec.mlir",
],
tags = [
# CUDA cuInit fails with sanitizer on.
"noasan",
"nomsan",
"notsan",
"noubsan",
"requires-gpu-sm80",
"driver=cuda",
],
tools = [
"//tools:iree-compile",
"//tools:iree-opt",
"//tools:iree-run-module",
"@llvm-project//llvm:FileCheck",
],
)