From e71bae5f8341687a3018a69945c2196d3a3b7c41 Mon Sep 17 00:00:00 2001 From: "Wang, Yi A" Date: Mon, 24 Nov 2025 13:15:25 +0000 Subject: [PATCH] extend cutlass to bmg Signed-off-by: Wang, Yi A --- build2cmake/src/templates/xpu/dep-cutlass-sycl.cmake | 10 +++++----- pkgs/xpu-packages/cutlass-sycl.nix | 4 ++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/build2cmake/src/templates/xpu/dep-cutlass-sycl.cmake b/build2cmake/src/templates/xpu/dep-cutlass-sycl.cmake index b4c330fe..12221122 100644 --- a/build2cmake/src/templates/xpu/dep-cutlass-sycl.cmake +++ b/build2cmake/src/templates/xpu/dep-cutlass-sycl.cmake @@ -42,8 +42,8 @@ if (NOT CutlassSycl_FOUND) message(STATUS "Setting Intel GPU optimization env vars for Cutlass-SYCL") set(CUTLASS_ENABLE_SYCL ON CACHE BOOL "Enable SYCL for CUTLASS") add_compile_definitions(CUTLASS_ENABLE_SYCL=1) - set(DPCPP_SYCL_TARGET "intel_gpu_pvc" CACHE STRING "SYCL target for Intel GPU") - add_compile_definitions(DPCPP_SYCL_TARGET=intel_gpu_pvc) + set(DPCPP_SYCL_TARGET "intel_gpu_bmg_g21,intel_gpu_pvc" CACHE STRING "SYCL target for Intel GPU") + add_compile_definitions(DPCPP_SYCL_TARGET=intel_gpu_bmg_g21,intel_gpu_pvc) set(SYCL_INTEL_TARGET ON CACHE BOOL "Enable SYCL for INTEL") add_compile_definitions(SYCL_INTEL_TARGET=1) @@ -64,11 +64,11 @@ if(CUTLASS_SYCL_REVISION MATCHES "^v3\\.9") add_compile_definitions(OLD_API=1) endif() -string(REPLACE "-fsycl-targets=spir64_gen,spir64" "-fsycl-targets=intel_gpu_pvc" sycl_link_flags "${sycl_link_flags}") -string(REPLACE "-device pvc,xe-lpg,ats-m150" "" sycl_link_flags "${sycl_link_flags}") +string(REPLACE "-fsycl-targets=spir64_gen,spir64" "-fsycl-targets=spir64" sycl_link_flags "${sycl_link_flags}") +string(REPLACE "-device pvc,xe-lpg,ats-m150" "-device bmg_g21,pvc" sycl_link_flags "${sycl_link_flags}") string(APPEND sycl_link_flags "-Xspirv-translator;-spirv-ext=+SPV_INTEL_split_barrier") if(CUTLASS_SYCL_REVISION STREQUAL "v0.5") string(APPEND sycl_link_flags ",+SPV_INTEL_2d_block_io,+SPV_INTEL_subgroup_matrix_multiply_accumulate") endif() -string(REPLACE "-fsycl-targets=spir64_gen,spir64" "-fsycl-targets=intel_gpu_pvc" sycl_flags "${sycl_flags}") +string(REPLACE "-fsycl-targets=spir64_gen,spir64" "-fsycl-targets=spir64" sycl_flags "${sycl_flags}") diff --git a/pkgs/xpu-packages/cutlass-sycl.nix b/pkgs/xpu-packages/cutlass-sycl.nix index 35c9eac7..ea13678c 100644 --- a/pkgs/xpu-packages/cutlass-sycl.nix +++ b/pkgs/xpu-packages/cutlass-sycl.nix @@ -51,7 +51,7 @@ stdenv.mkDerivation rec { "-DCMAKE_C_COMPILER=icx" "-DCMAKE_CXX_COMPILER=icpx" "-DCUTLASS_ENABLE_SYCL=ON" - "-DDPCPP_SYCL_TARGET=intel_gpu_pvc" + "-DDPCPP_SYCL_TARGET=intel_gpu_bmg_g21,intel_gpu_pvc" "-DCMAKE_EXPORT_COMPILE_COMMANDS=ON" "-DCUTLASS_ENABLE_GTEST_UNIT_TESTS=OFF" "-DCUTLASS_ENABLE_TESTS=OFF" @@ -67,7 +67,7 @@ stdenv.mkDerivation rec { set(CUTLASS_INCLUDE_DIR "$out/include") set(CUTLASS_TOOLS_UTIL_INCLUDE_DIR "$out/tools/util/include") add_compile_definitions(CUTLASS_ENABLE_SYCL) - add_compile_definitions(DPCPP_SYCL_TARGET=intel_gpu_pvc) + add_compile_definitions(DPCPP_SYCL_TARGET=intel_gpu_bmg_g21,intel_gpu_pvc) add_compile_definitions(SYCL_INTEL_TARGET=1) set(ENV{SYCL_PROGRAM_COMPILE_OPTIONS} "-ze-opt-large-register-file") set(ENV{IGC_VISAOptions} "-perfmodel")