Mentions légales du service

Skip to content
Snippets Groups Projects
Commit f218a10c authored by hhakim's avatar hhakim
Browse files

Refactor windows gpu_mod building into script and fix interference between CUDA versions.

parent 3bd79a2b
Branches
No related tags found
No related merge requests found
......@@ -154,22 +154,7 @@ pkg_macos:
# - mkdir gpu_mod
# - git submodule sync --recursive
# - git submodule update --init --recursive
#TODO: loop on cuda versions
- cd gpu_mod
- if NOT EXIST build-cu11.4 (mkdir build-cu11.4) else (rmdir /S /Q build-cu11.4 & mkdir build-cu11.4)
- cd build-cu11.4
- cmake -G "Visual Studio 16 2019" -DCMAKE_CUDA_COMPILER="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.4/bin/nvcc.exe" -DCUDA_TOOLKIT_INCLUDE="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.4/include" -DCUDA_TOOLKIT_DIR="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.4" ..
#- cmake -G "MinGW Makefiles" -DCMAKE_CUDA_COMPILER="E:/NVIDIA GPU Computing Toolkit/CUDA/v11.4/bin/nvcc.exe" .. #-DCUDA_HOST_COMPILER="E:/TDM-GCC-64/bin/g++.exe" ..
- cmake --build . --config %BUILD_CONFIG%
- move %BUILD_CONFIG%\gm.dll .
- cd ..
- if NOT EXIST build-cu12.1 (mkdir build-cu12.1) else (rmdir /S /Q build-cu12.1 & mkdir build-cu12.1)
- cd build-cu12.1
- cmake -G "Visual Studio 16 2019" -DCMAKE_CUDA_COMPILER="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.1/bin/nvcc.exe" -DCUDA_TOOLKIT_INCLUDE="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.1/include" -DCUDA_TOOLKIT_DIR="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.1" ..
#- cmake -G "MinGW Makefiles" -DCMAKE_CUDA_COMPILER="E:/NVIDIA GPU Computing Toolkit/CUDA/v12.1/bin/nvcc.exe" .. #-DCUDA_HOST_COMPILER="E:/TDM-GCC-64/bin/g++.exe" ..
- cmake --build . --config %BUILD_CONFIG%
- move %BUILD_CONFIG%\gm.dll .
- cd ..\..
- call misc\continuous_integration\jobs\win\build_gpu_mod.bat
pkg_win:
stage: pkg
......@@ -550,21 +535,7 @@ pkg_linux_purepy_release_openblaso:
stage: pkg_purepy
script:
#TODO: factorize in a script with pkg_win
- cd gpu_mod
- if NOT EXIST build-cu11.4 (mkdir build-cu11.4) else (rmdir /S /Q build-cu11.4 & mkdir build-cu11.4)
- cd build-cu11.4
- cmake -G "Visual Studio 16 2019" -DCMAKE_CUDA_COMPILER="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.4/bin/nvcc.exe" -DCUDA_TOOLKIT_INCLUDE="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.4/include" -DCUDA_TOOLKIT_DIR="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.4" ..
#- cmake -G "MinGW Makefiles" -DCMAKE_CUDA_COMPILER="E:/NVIDIA GPU Computing Toolkit/CUDA/v9.2/bin/nvcc.exe" .. #-DCUDA_HOST_COMPILER="E:/TDM-GCC-64/bin/g++.exe" ..
- cmake --build . --config %BUILD_CONFIG%
- move %BUILD_CONFIG%\gm.dll .
- cd ..
- if NOT EXIST build-cu12.1 (mkdir build-cu12.1) else (rmdir /S /Q build-cu12.1 & mkdir build-cu12.1)
- cd build-cu12.1
- cmake -G "Visual Studio 16 2019" -DCMAKE_CUDA_COMPILER="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.1/bin/nvcc.exe" -DCUDA_TOOLKIT_INCLUDE="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.1/include" -DCUDA_TOOLKIT_DIR="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.1" ..
#- cmake -G "MinGW Makefiles" -DCMAKE_CUDA_COMPILER="E:/NVIDIA GPU Computing Toolkit/CUDA/v9.2/bin/nvcc.exe" .. #-DCUDA_HOST_COMPILER="E:/TDM-GCC-64/bin/g++.exe" ..
- cmake --build . --config %BUILD_CONFIG%
- move %BUILD_CONFIG%\gm.dll .
- cd ..\..
- call misc\continuous_integration\jobs\win\build_gpu_mod.bat
- if NOT EXIST build (mkdir build) else (rmdir /S /Q build & mkdir build)
- cd build
- 'cmake -G "Visual Studio 16 2019" -DBUILD_WRAPPER_MATLAB=OFF -DBUILD_WRAPPER_PYTHON=ON -DSLOW_TESTS=OFF -DCPACK_PACKAGE_VERSION=%VERSION% -DCMAKE_INSTALL_PREFIX=win_pkg_build -DBUILD_TESTING=OFF -DMATIO_LIB_FILE=C:/faust_libs/libmatio_standalone.lib -DREMOTE_DATA_URL="%DURL%" -DREMOTE_DATA_FILE="%DFILE%" -DEXPERIMENTAL_PKG=%EXPERIMENTAL_PKG% -DUSE_GPU_MOD=ON -DCMAKE_PREFIX_PATH=../gpu_mod -DBUILD_MULTITHREAD=ON -DBUILD_FLOAT_PYX=ON -DCMAKE_BUILD_TYPE=%BUILD_CONFIG% -DVCOMPLIB_PATH=C:\faust_libs\vcomp140.dll ..'
......
rem should be in faust project root dir
cd gpu_mod
rem avoid interference between CUDA11 and CUDA12 by removing/setting VS build files
set VS_PATH=C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Microsoft\VC\v160\BuildCustomizations
copy /Y "%VS_PATH%\bakCUDA 11.4.xml" "%VS_PATH%\CUDA 11.4.xml"
copy /Y "%VS_PATH%\bakCUDA 11.4.props" "%VS_PATH%\CUDA 11.4.props"
copy /Y "%VS_PATH%\bakCUDA 11.4.targets" "%VS_PATH%\CUDA 11.4.targets"
del /Q "%VS_PATH%\CUDA 12.1.xml" "%VS_PATH%\CUDA 12.1.props" "%VS_PATH%\CUDA 12.1.targets"
if NOT EXIST build-cu11.4 (mkdir build-cu11.4) else (rmdir /S /Q build-cu11.4 & mkdir build-cu11.4)
cd build-cu11.4
cmake -G "Visual Studio 16 2019" -DCMAKE_CUDA_COMPILER="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.4/bin/nvcc.exe" -DCUDA_TOOLKIT_INCLUDE="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.4/include" -DCUDA_TOOLKIT_ROOT_DIR="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.4" ..
cmake --build . --config %BUILD_CONFIG%
move %BUILD_CONFIG%\gm.dll .
cd ..
copy /Y "%VS_PATH%\bakCUDA 12.1.xml" "%VS_PATH%\CUDA 12.1.xml"
copy /Y "%VS_PATH%\bakCUDA 12.1.props" "%VS_PATH%\CUDA 12.1.props"
copy /Y "%VS_PATH%\bakCUDA 12.1.targets" "%VS_PATH%\CUDA 12.1.targets"
del /Q "%VS_PATH%\CUDA 11.4.xml" "%VS_PATH%\CUDA 11.4.props" "%VS_PATH%\CUDA 11.4.targets"
if NOT EXIST build-cu12.1 (mkdir build-cu12.1) else (rmdir /S /Q build-cu12.1 & mkdir build-cu12.1)
cd build-cu12.1
cmake -G "Visual Studio 16 2019" -DCMAKE_CUDA_COMPILER="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.1/bin/nvcc.exe" -DCUDA_TOOLKIT_INCLUDE="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.1/include" -DCUDA_TOOLKIT_ROOT_DIR="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.1" ..
cmake --build . --config %BUILD_CONFIG%
move %BUILD_CONFIG%\gm.dll .
cd ..\..
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment