Skip to content
This repository was archived by the owner on Apr 6, 2026. It is now read-only.

Commit e9c8cef

Browse files
committed
Update sycl-tla tag
1 parent 3960fbd commit e9c8cef

2 files changed

Lines changed: 30 additions & 10 deletions

File tree

build2cmake/src/templates/xpu/dep-cutlass-sycl.cmake

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
find_package(CutlassSycl)
22

33
if(DPCPP_VERSION STREQUAL "2025.2")
4-
set(CUTLASS_SYCL_REVISION "v0.6" CACHE STRING "CUTLASS revision to use")
4+
# TODO revert v0.5
5+
set(CUTLASS_SYCL_REVISION "14055e78510b8776ba739755eb57e592fdceefdb" CACHE STRING "CUTLASS revision to use")
56
elseif(DPCPP_VERSION STREQUAL "2025.1")
67
set(CUTLASS_SYCL_REVISION "v3.9-0.3" CACHE STRING "CUTLASS revision to use")
78
elseif(DPCPP_VERSION STREQUAL "2025.0")
@@ -27,14 +28,15 @@ if (NOT CutlassSycl_FOUND)
2728
else()
2829
FetchContent_Declare(
2930
cutlass
30-
GIT_REPOSITORY https://github.com/intel/cutlass-sycl.git
31+
GIT_REPOSITORY https://github.com/intel/sycl-tla.git
3132
GIT_TAG ${CUTLASS_SYCL_REVISION}
3233
GIT_PROGRESS TRUE
3334

3435
# Speed up CUTLASS download by retrieving only the specified GIT_TAG instead of the history.
3536
# Important: If GIT_SHALLOW is enabled then GIT_TAG works only with branch names and tags.
3637
# So if the GIT_TAG above is updated to a commit hash, GIT_SHALLOW must be set to FALSE
37-
GIT_SHALLOW TRUE
38+
# TODO For 2025.2 FA2, we use a commit hash, so GIT_SHALLOW must be FALSE
39+
GIT_SHALLOW $<IF:$<STREQUAL:${DPCPP_VERSION},2025.2>,FALSE,TRUE>
3840
)
3941
endif()
4042

@@ -64,12 +66,23 @@ if(CUTLASS_SYCL_REVISION MATCHES "^v3\\.9")
6466
add_compile_definitions(OLD_API=1)
6567
endif()
6668

67-
string(REGEX REPLACE "^v" "" CUTLASS_VER_NO_V "${CUTLASS_SYCL_REVISION}")
68-
if(CUTLASS_VER_NO_V VERSION_LESS "0.6" OR CUTLASS_VER_NO_V MATCHES "^3\\.")
69+
# TODO Determine which flash attention implementation to use
70+
if(CUTLASS_SYCL_REVISION MATCHES "^[0-9a-f]{40}$")
71+
# Commit hash - assume newer version
72+
set(USE_OLD_FLASH_ATTN OFF)
73+
elseif(CUTLASS_SYCL_REVISION MATCHES "^v3\\.")
74+
# v3.x versions use old implementation
6975
add_compile_definitions(USE_OLD_FLASH_ATTN=1)
7076
set(USE_OLD_FLASH_ATTN ON)
7177
else()
72-
set(USE_OLD_FLASH_ATTN OFF)
78+
# Tag versions - check version number
79+
string(REGEX REPLACE "^v" "" CUTLASS_VER_NO_V "${CUTLASS_SYCL_REVISION}")
80+
if(CUTLASS_VER_NO_V VERSION_LESS "0.6")
81+
add_compile_definitions(USE_OLD_FLASH_ATTN=1)
82+
set(USE_OLD_FLASH_ATTN ON)
83+
else()
84+
set(USE_OLD_FLASH_ATTN OFF)
85+
endif()
7386
endif()
7487

7588
string(REPLACE "-fsycl-targets=spir64_gen,spir64" "-fsycl-targets=spir64" sycl_link_flags "${sycl_link_flags}")

pkgs/xpu-packages/cutlass-sycl.nix

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,14 @@ let
1515
cutlassVersions = {
1616
"2025.1" = {
1717
version = "3.9-0.3";
18+
useTag = true;
1819
hash = "sha256-FLmTseMw31txptQkvWaN03xoaLzIbQz2Ip1xtCKH3ZE=";
1920
};
2021
"2025.2" = {
21-
version = "0.5";
22-
hash = "sha256-IgsPsREGPqtko6qVyVmDyI1CAGn46fqu1clL8UHltno=";
22+
version = "0.6-dev";
23+
# TODO Use latest commit from main branch for FA2 newer features
24+
rev = "14055e78510b8776ba739755eb57e592fdceefdb";
25+
hash = "sha256-5KVvFdEYFQhvIjeauoEUSyhBdbSh6UYEwgsd+X7jcHA=";
2326
};
2427
};
2528
cutlassVersion =
@@ -33,8 +36,12 @@ stdenv.mkDerivation rec {
3336

3437
src = fetchFromGitHub {
3538
owner = "intel";
36-
repo = "cutlass-sycl";
37-
tag = "v${cutlassVersion.version}";
39+
repo = "sycl-tla";
40+
# TODO Use tag for releases, rev for development commits
41+
${if cutlassVersion ? useTag then "tag" else "rev"} =
42+
if cutlassVersion ? useTag
43+
then "v${cutlassVersion.version}"
44+
else cutlassVersion.rev;
3845
inherit (cutlassVersion) hash;
3946
};
4047

0 commit comments

Comments
 (0)