From c36b491dca70207080ed45d6525309fc45661607 Mon Sep 17 00:00:00 2001 From: mosout Date: Wed, 22 May 2024 11:17:07 +0800 Subject: [PATCH 1/3] flash attention use mirror --- cmake/third_party/flash_attention.cmake | 34 ++++++++++++------------- 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/cmake/third_party/flash_attention.cmake b/cmake/third_party/flash_attention.cmake index 6958afadaef..5637a3c8c69 100644 --- a/cmake/third_party/flash_attention.cmake +++ b/cmake/third_party/flash_attention.cmake @@ -2,13 +2,11 @@ include(ExternalProject) find_package(Threads) -# NOTE: A git version of 1.6.5 or later is required if this download method is used. -find_package(Git QUIET REQUIRED) - set(FLASH_ATTENTION_PROJECT flash_attention) -set(FLASH_ATTENTION_URL https://github.com/Oneflow-Inc/flash-attention-v2.git) -set(FLASH_ATTENTION_TAG eed2e82b880e06237af3e50ceac4cf6728b15645) +set(FLASH_ATTENTION_URL https://github.com/Oneflow-Inc/flash-attention-v2/archive/eed2e82b880e06237af3e50ceac4cf6728b15645.zip) +use_mirror(VARIABLE FLASH_ATTENTION_URL URL ${FLASH_ATTENTION_URL}) +set(FLASH_ATTENTION_MD5 cff17aa2a95ad754c9889bb3a03d5c51) set(FLASH_ATTENTION_INSTALL_DIR ${THIRD_PARTY_DIR}/flash_attention) set(FLASH_ATTENTION_INCLUDE_DIR ${FLASH_ATTENTION_INSTALL_DIR}/include CACHE PATH "" FORCE) @@ -19,21 +17,21 @@ if(THIRD_PARTY) ExternalProject_Add( ${FLASH_ATTENTION_PROJECT} PREFIX flash_attention - GIT_REPOSITORY ${FLASH_ATTENTION_URL} - GIT_TAG ${FLASH_ATTENTION_TAG} + URL ${FLASH_ATTENTION_URL} + URL_MD5 ${FLASH_ATTENTION_MD5} UPDATE_COMMAND "" BUILD_BYPRODUCTS ${FLASH_ATTENTION_LIBRARIES} CMAKE_ARGS -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE} - -DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS} - -DCMAKE_CXX_FLAGS_DEBUG:STRING=${CMAKE_CXX_FLAGS_DEBUG} - -DCMAKE_CXX_FLAGS_RELEASE:STRING=${CMAKE_CXX_FLAGS_RELEASE} - -DCMAKE_CUDA_ARCHITECTURES:STRING=${CMAKE_CUDA_ARCHITECTURES} + -DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS} + -DCMAKE_CXX_FLAGS_DEBUG:STRING=${CMAKE_CXX_FLAGS_DEBUG} + -DCMAKE_CXX_FLAGS_RELEASE:STRING=${CMAKE_CXX_FLAGS_RELEASE} + -DCMAKE_CUDA_ARCHITECTURES:STRING=${CMAKE_CUDA_ARCHITECTURES} CMAKE_CACHE_ARGS - -DCMAKE_CUDA_COMPILER:STRING=${CUDAToolkit_NVCC_EXECUTABLE} - -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER} - -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER} - -DCMAKE_INSTALL_PREFIX:PATH=${FLASH_ATTENTION_INSTALL_DIR} - -DCMAKE_INSTALL_LIBDIR:PATH=${FLASH_ATTENTION_LIBRARY_DIR} - -DCMAKE_INSTALL_MESSAGE:STRING=${CMAKE_INSTALL_MESSAGE} - -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}) + -DCMAKE_CUDA_COMPILER:STRING=${CUDAToolkit_NVCC_EXECUTABLE} + -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER} + -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER} + -DCMAKE_INSTALL_PREFIX:PATH=${FLASH_ATTENTION_INSTALL_DIR} + -DCMAKE_INSTALL_LIBDIR:PATH=${FLASH_ATTENTION_LIBRARY_DIR} + -DCMAKE_INSTALL_MESSAGE:STRING=${CMAKE_INSTALL_MESSAGE} + -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}) endif(THIRD_PARTY) From a1369e94480394e5bd757a8980bc0670c2eec5c8 Mon Sep 17 00:00:00 2001 From: mosout Date: Wed, 22 May 2024 11:19:18 +0800 Subject: [PATCH 2/3] refine --- cmake/third_party/flash_attention.cmake | 2 -- 1 file changed, 2 deletions(-) diff --git a/cmake/third_party/flash_attention.cmake b/cmake/third_party/flash_attention.cmake index 5637a3c8c69..7b33f190e67 100644 --- a/cmake/third_party/flash_attention.cmake +++ b/cmake/third_party/flash_attention.cmake @@ -1,7 +1,5 @@ include(ExternalProject) -find_package(Threads) - set(FLASH_ATTENTION_PROJECT flash_attention) set(FLASH_ATTENTION_URL https://github.com/Oneflow-Inc/flash-attention-v2/archive/eed2e82b880e06237af3e50ceac4cf6728b15645.zip) From fa33c101c948b17db796e72c72d8757f80cc548c Mon Sep 17 00:00:00 2001 From: oneflow-ci-bot Date: Wed, 22 May 2024 03:21:02 +0000 Subject: [PATCH 3/3] auto format by CI --- cmake/third_party/flash_attention.cmake | 26 +++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/cmake/third_party/flash_attention.cmake b/cmake/third_party/flash_attention.cmake index 7b33f190e67..00937ccf636 100644 --- a/cmake/third_party/flash_attention.cmake +++ b/cmake/third_party/flash_attention.cmake @@ -2,7 +2,9 @@ include(ExternalProject) set(FLASH_ATTENTION_PROJECT flash_attention) -set(FLASH_ATTENTION_URL https://github.com/Oneflow-Inc/flash-attention-v2/archive/eed2e82b880e06237af3e50ceac4cf6728b15645.zip) +set(FLASH_ATTENTION_URL + https://github.com/Oneflow-Inc/flash-attention-v2/archive/eed2e82b880e06237af3e50ceac4cf6728b15645.zip +) use_mirror(VARIABLE FLASH_ATTENTION_URL URL ${FLASH_ATTENTION_URL}) set(FLASH_ATTENTION_MD5 cff17aa2a95ad754c9889bb3a03d5c51) @@ -20,16 +22,16 @@ if(THIRD_PARTY) UPDATE_COMMAND "" BUILD_BYPRODUCTS ${FLASH_ATTENTION_LIBRARIES} CMAKE_ARGS -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE} - -DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS} - -DCMAKE_CXX_FLAGS_DEBUG:STRING=${CMAKE_CXX_FLAGS_DEBUG} - -DCMAKE_CXX_FLAGS_RELEASE:STRING=${CMAKE_CXX_FLAGS_RELEASE} - -DCMAKE_CUDA_ARCHITECTURES:STRING=${CMAKE_CUDA_ARCHITECTURES} + -DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS} + -DCMAKE_CXX_FLAGS_DEBUG:STRING=${CMAKE_CXX_FLAGS_DEBUG} + -DCMAKE_CXX_FLAGS_RELEASE:STRING=${CMAKE_CXX_FLAGS_RELEASE} + -DCMAKE_CUDA_ARCHITECTURES:STRING=${CMAKE_CUDA_ARCHITECTURES} CMAKE_CACHE_ARGS - -DCMAKE_CUDA_COMPILER:STRING=${CUDAToolkit_NVCC_EXECUTABLE} - -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER} - -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER} - -DCMAKE_INSTALL_PREFIX:PATH=${FLASH_ATTENTION_INSTALL_DIR} - -DCMAKE_INSTALL_LIBDIR:PATH=${FLASH_ATTENTION_LIBRARY_DIR} - -DCMAKE_INSTALL_MESSAGE:STRING=${CMAKE_INSTALL_MESSAGE} - -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}) + -DCMAKE_CUDA_COMPILER:STRING=${CUDAToolkit_NVCC_EXECUTABLE} + -DCMAKE_C_COMPILER_LAUNCHER:STRING=${CMAKE_C_COMPILER_LAUNCHER} + -DCMAKE_CXX_COMPILER_LAUNCHER:STRING=${CMAKE_CXX_COMPILER_LAUNCHER} + -DCMAKE_INSTALL_PREFIX:PATH=${FLASH_ATTENTION_INSTALL_DIR} + -DCMAKE_INSTALL_LIBDIR:PATH=${FLASH_ATTENTION_LIBRARY_DIR} + -DCMAKE_INSTALL_MESSAGE:STRING=${CMAKE_INSTALL_MESSAGE} + -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}) endif(THIRD_PARTY)