Skip to content

AMX extension

AMX extension #584

Workflow file for this run

name: Build
on: [push, pull_request]
jobs:
build-linux-hip-rocm:
strategy:
# max-parallel: 1 # Sets the limit of jobs to run concurrently
fail-fast: true
matrix:
os: [ubuntu-22.04]
compiler: [g++-9, g++-10, g++-11, g++-12, clang++-11, clang++-12, clang++-13, clang++-14, clang++-15]
HIP: ['6.2']
runs-on: ${{ matrix.os }}
env:
HIP_ROOT: '/opt/rocm'
steps:
- name: Try to clean up some things
run: |
sudo rm -rf /usr/local/lib/android
sudo rm -rf /usr/share/dotnet
- name: Install g++-9 (if needed)
if: matrix.compiler == 'g++-9'
run: |
sudo apt install g++-9
- name: Install g++-10 (if needed)
if: matrix.compiler == 'g++-10'
run: |
sudo apt install g++-10
- name: Install g++-11 (if needed)
if: matrix.compiler == 'g++-11'
run: |
sudo apt install g++-11
- name: Install g++-12 (if needed)
if: matrix.compiler == 'g++-12'
run: |
sudo apt install g++-12
- name: Install clang++-11 (if needed)
if: matrix.compiler == 'clang++-11'
run: |
sudo apt install clang-11
- name: Install clang++-12 (if needed)
if: matrix.compiler == 'clang++-12'
run: |
sudo apt install clang-12
- name: Install clang++-13 (if needed)
if: matrix.compiler == 'clang++-13'
run: |
sudo apt install clang-13
- name: Install clang++-14 (if needed)
if: matrix.compiler == 'clang++-14'
run: |
sudo apt install clang-14
- name: Install clang++-15 (if needed)
if: matrix.compiler == 'clang++-15'
run: |
sudo apt install clang-15
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: '0'
- name: Install HIP runtime (if needed)
if: matrix.HIP != '0' && matrix.ONEAPI == 0 && matrix.CUDA == 0
run: |
case ${{ matrix.HIP }} in
6.2)
wget https://repo.radeon.com/amdgpu-install/6.2/ubuntu/jammy/amdgpu-install_6.2.60200-1_all.deb
sudo apt install ./amdgpu-install_6.2.60200-1_all.deb
sudo amdgpu-install -y --usecase=hiplibsdk,rocm --no-dkms
;;
esac
- name: Create build directory
run: |
mkdir build
- name: Run CMake configure (HIP)
if: matrix.HIP != '0' && matrix.CUDA == '0' && matrix.ONEAPI == '0'
env:
CXX: ${{ matrix.compiler }}
run: |
export CPATH=${HIP_ROOT}/include:${HIP_ROOT}
export LD_LIBRARY_PATH=${HIP_ROOT}/lib64:${HIP_ROOT}/lib64/stubs:${LD_LIBRARY_PATH}
export LIBRARY_PATH=${HIP_ROOT}/lib64:${HIP_ROOT}/lib64/stubs:${LIBRARY_PATH}
export HIP_LIB_PATH=${HIP_ROOT}/lib64:${HIP_ROOT}/lib64/stubs
export PATH=${HIP_ROOT}:${PATH}
export HIP_HOME=${HIP_ROOT}
export HIP_PATH=${HIP_ROOT}
export HIPToolkit_ROOT=${HIP_ROOT}
cd build
cmake -DFIRESTARTER_BUILD_TYPE="FIRESTARTER_HIP" -DCMAKE_EXE_LINKER_FLAGS="-L${HIP_ROOT}/lib64/stubs/" ..
- name: Build (default, CUDA, HIP)
if: matrix.ONEAPI =='0'
run: |
cd build
make -j2
- name: Strip binary (HIP)
if: matrix.CUDA == '0' && matrix.HIP != '0' && matrix.ONEAPI == '0'
run: |
cd build
strip src/FIRESTARTER_HIP
- uses: actions/upload-artifact@v4
if: matrix.compiler == 'g++-9' && matrix.HIP != '0' && matrix.CUDA == '0' && matrix.ONEAPI == '0' && ( github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') || github.event_name == 'pull_request' )
with:
name: FIRESTARTER_HIP_${{ matrix.HIP }}-linux
retention-days: 1
path: build/src/FIRESTARTER_HIP
build-linux:
strategy:
# max-parallel: 1 # Sets the limit of jobs to run concurrently
fail-fast: true
matrix:
os: [ubuntu-20.04]
compiler: [g++-7, g++-8, g++-9, g++-10, clang++-8, clang++-9, clang++-10]
CUDA: ['0', '8.0', '11.0', 'NVHPC-22.5']
ONEAPI: ['0', '2023.2.0', '2024.0']
runs-on: ${{ matrix.os }}
env:
CUDA_ROOT: '/usr/local/cuda'
#kudos to https://github.com/easimon/maximize-build-space/blob/master/action.yml
steps:
- name: Try to clean up some things
run: |
sudo rm -rf /usr/local/lib/android
sudo rm -rf /usr/share/dotnet
- name: Install g++-7 (if needed)
if: matrix.compiler == 'g++-7'
run: |
sudo apt install g++-7
- name: Install g++-8 (if needed)
if: matrix.compiler == 'g++-8'
run: |
sudo apt install g++-8
- name: Install clang++-8 (if needed)
if: matrix.compiler == 'clang++-8'
run: |
sudo apt install clang-8
- name: Install clang++-9 (if needed)
if: matrix.compiler == 'clang++-9'
run: |
sudo apt install clang-9
- name: Install clang++-10 (if needed)
if: matrix.compiler == 'clang++-10'
run: |
sudo apt install clang-10
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: '0'
- name: Install CUDA runtime (if needed)
if: matrix.CUDA != '0' && matrix.ONEAPI == 0
run: |
case ${{ matrix.CUDA }} in
8.0)
wget https://developer.nvidia.com/compute/cuda/8.0/Prod2/local_installers/cuda_8.0.61_375.26_linux-run
wget https://developer.nvidia.com/compute/cuda/8.0/Prod2/patches/2/cuda_8.0.61.2_linux-run
sudo sh cuda_8.0.61_375.26_linux-run --extract=${CUDA_ROOT}
sudo sh ${CUDA_ROOT}/cuda-linux64-rel-8.0.61-21551265.run --tar mxvf -C ${CUDA_ROOT}
sudo sh cuda_8.0.61.2_linux-run --accept-eula --silent --installdir=${CUDA_ROOT}
rm cuda_8.0.61_375.26_linux-run
rm cuda_8.0.61.2_linux-run
;;
11.0)
wget https://developer.download.nvidia.com/compute/cuda/11.0.3/local_installers/cuda_11.0.3_450.51.06_linux.run
sudo sh cuda_11.0.3_450.51.06_linux.run --toolkit --toolkitpath=${CUDA_ROOT} --override --silent
rm cuda_11.0.3_450.51.06_linux.run
;;
NVHPC-22.5)
wget https://developer.download.nvidia.com/hpc-sdk/22.5/nvhpc_2022_225_Linux_x86_64_cuda_11.7.tar.gz
tar xpzf nvhpc_2022_225_Linux_x86_64_cuda_11.7.tar.gz
rm nvhpc_2022_225_Linux_x86_64_cuda_11.7.tar.gz
sudo NVHPC_SILENT="true" NVHPC_INSTALL_DIR="$CUDA_ROOT" NVHPC_INSTALL_TYPE="single" ./nvhpc_2022_225_Linux_x86_64_cuda_11.7/install
rm -rf nvhpc_2022_225_Linux_x86_64_cuda_11.7
esac
- name: Install OneAPI Base-Toolkit (if needed)
if: matrix.ONEAPI != '0' && matrix.CUDA == '0'
run: |
wget -O- https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB | gpg --dearmor | sudo tee /usr/share/keyrings/oneapi-archive-keyring.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/oneapi-archive-keyring.gpg] https://apt.repos.intel.com/oneapi all main" | sudo tee /etc/apt/sources.list.d/oneAPI.list
sudo apt update
sudo apt install intel-basekit-${{ matrix.ONEAPI }}
- name: Create build directory
run: |
mkdir build
- name: Run CMake configure (default)
if: matrix.CUDA == '0' && matrix.ONEAPI == '0'
env:
CXX: ${{ matrix.compiler }}
run: |
cd build
cmake ..
- name: Run CMake configure (CUDA)
if: matrix.CUDA != '0' && matrix.CUDA != 'NVHPC-22.5' && matrix.ONEAPI == '0'
env:
CXX: ${{ matrix.compiler }}
run: |
export CPATH=${CUDA_ROOT}/include:${CPATH}
export LD_LIBRARY_PATH=${CUDA_ROOT}/lib64:${CUDA_ROOT}/lib64/stubs:${LD_LIBRARY_PATH}
export LIBRARY_PATH=${CUDA_ROOT}/lib64:${CUDA_ROOT}/lib64/stubs:${LIBRARY_PATH}
export CUDA_LIB_PATH=${CUDA_ROOT}/lib64:${CUDA_ROOT}/lib64/stubs
export PATH=${CUDA_ROOT}:${PATH}
export CUDA_HOME=${CUDA_ROOT}
export CUDA_PATH=${CUDA_ROOT}
export CUDAToolkit_ROOT=${CUDA_ROOT}
cd build
cmake -DFIRESTARTER_BUILD_TYPE="FIRESTARTER_CUDA" -DCMAKE_EXE_LINKER_FLAGS="-L${CUDA_ROOT}/lib64/stubs/" ..
- name: Run CMake configure (CUDA with NVHPC)
if: matrix.CUDA == 'NVHPC-22.5' && matrix.ONEAPI == '0'
env:
CXX: ${{ matrix.compiler }}
run: |
NVARCH=`uname -s`_`uname -m`; export NVARCH
PATH=$CUDA_ROOT/$NVARCH/22.5/compilers/bin:$PATH; export PATH
LD_LIBRARY_PATH=$CUDA_ROOT/$NVARCH/22.5/compilers/lib:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH
LD_LIBRARY_PATH=$CUDA_ROOT/$NVARCH/22.5/cuda/11.7/lib64:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH
LD_LIBRARY_PATH=$CUDA_ROOT/$NVARCH/22.5/cuda/11.7/lib64/stubs:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH
cd build
cmake -DFIRESTARTER_BUILD_TYPE="FIRESTARTER_CUDA" -DCMAKE_EXE_LINKER_FLAGS=-L"$CUDA_ROOT/$NVARCH/22.5/cuda/11.7/lib64/stubs" -LA ..
- name: Run CMake configure (OneAPI 2023.2.0)
if: matrix.CUDA == '0' && matrix.ONEAPI =='2023.2.0'
run: |
. /opt/intel/oneapi/setvars.sh
cd build
cmake -DFIRESTARTER_BUILD_TYPE="FIRESTARTER_ONEAPI" ..
- name: Run CMake configure (OneAPI 2024.0)
if: matrix.CUDA == '0' && matrix.ONEAPI =='2024.0'
run: |
. /opt/intel/oneapi/${{ matrix.ONEAPI }}/oneapi-vars.sh
cd build
cmake -DFIRESTARTER_BUILD_TYPE="FIRESTARTER_ONEAPI" ..
- name: Build (default, CUDA)
if: matrix.ONEAPI =='0'
run: |
cd build
make -j2
- name: Build (OneAPI 2023.2.0)
if: matrix.CUDA == '0' && matrix.ONEAPI =='2023.2.0'
run: |
. /opt/intel/oneapi/setvars.sh
cd build
make -j2
- name: Build (OneAPI 2024.0)
if: matrix.CUDA == '0' && matrix.ONEAPI =='2024.0'
run: |
. /opt/intel/oneapi/${{ matrix.ONEAPI }}/oneapi-vars.sh
cd build
make -j2
- name: Strip binary (default)
if: matrix.CUDA == '0' && matrix.ONEAPI == '0'
run: |
cd build
strip src/FIRESTARTER
- name: Strip binary (CUDA)
if: matrix.CUDA != '0' && matrix.ONEAPI == '0'
run: |
cd build
strip src/FIRESTARTER_CUDA
- name: Strip binary (OneAPI)
if: matrix.ONEAPI != '0' && matrix.CUDA == '0'
run: |
cd build
strip src/FIRESTARTER_ONEAPI
- name: Test FIRESTARTER (default)
if: matrix.CUDA == '0' && matrix.ONEAPI == '0'
run: ./build/src/FIRESTARTER -t 1
- uses: actions/upload-artifact@v4
if: matrix.compiler == 'clang++-10' && matrix.CUDA == '0' && matrix.ONEAPI == '0' && ( github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') || github.event_name == 'pull_request' )
with:
name: FIRESTARTER-linux
retention-days: 1
path: build/src/FIRESTARTER
- uses: actions/upload-artifact@v4
if: matrix.compiler == 'clang++-10' && matrix.CUDA != '0' && matrix.ONEAPI == '0' && ( github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') || github.event_name == 'pull_request' )
with:
name: FIRESTARTER_CUDA_${{ matrix.CUDA }}-linux
retention-days: 1
path: build/src/FIRESTARTER_CUDA
- uses: actions/upload-artifact@v4
if: matrix.compiler == 'clang++-10' && matrix.CUDA == '0' && matrix.ONEAPI != '0' && ( github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') || github.event_name == 'pull_request' )
with:
name: FIRESTARTER_ONEAPI_${{ matrix.ONEAPI }}-linux
retention-days: 1
path: build/src/FIRESTARTER_ONEAPI
- name: UnInstall g++-7 (if needed)
if: matrix.compiler == 'g++-7'
run: |
sudo apt remove g++-7
sudo apt autoremove
- name: UnInstall g++-8 (if needed)
if: matrix.compiler == 'g++-8'
run: |
sudo apt remove g++-8
sudo apt autoremove
- name: UnInstall clang++-8 (if needed)
if: matrix.compiler == 'clang++-8'
run: |
sudo apt remove clang-8
sudo apt autoremove
- name: UnInstall clang++-9 (if needed)
if: matrix.compiler == 'clang++-9'
run: |
sudo apt remove clang-9
sudo apt autoremove
- name: UnInstall clang++-10 (if needed)
if: matrix.compiler == 'clang++-10'
run: |
sudo apt remove clang-10
sudo apt autoremove
- name: UnInstall CUDA runtime (if needed)
if: matrix.CUDA != '0' && matrix.ONEAPI == '0'
run: |
sudo rm -rf ${CUDA_ROOT}
- name: UnInstall OneAPI Base-Toolkit (if needed)
if: matrix.ONEAPI != '0' && matrix.CUDA == '0'
run: |
sudo apt remove intel-basekit-${{ matrix.ONEAPI }}
sudo apt autoremove
build-windows:
strategy:
fail-fast: false
matrix:
os: [windows-2019]
cfg:
- { CUDA: '0', ONEAPI: '0', MSVC: true }
- { CUDA: '0', ONEAPI: '0', MSVC: false }
- { CUDA: '11.0', MSVC: true }
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: '0'
- name: Install CMake
uses: crazy-max/ghaction-chocolatey@v3
with:
args: install cmake
- name: Install Mingw
uses: crazy-max/ghaction-chocolatey@v3
if: matrix.cfg.MSVC == false
with:
args: install mingw
- name: Install CUDA Toolkit
if: matrix.cfg.CUDA == '11.0'
shell: pwsh
run: |
Set-ExecutionPolicy unrestricted
& '.github\\install-cuda.ps1' -Version '11.0'
- uses: ilammy/msvc-dev-cmd@v1
if: matrix.cfg.MSVC == true
- name: Create build directory
shell: pwsh
run: |
mkdir build
- name: Run CMake configure
if: matrix.cfg.CUDA == '0' && matrix.cfg.MSVC == false
shell: pwsh
run: |
cd build
cmake -G "MinGW Makefiles" ..
- name: Run CMake configure
if: matrix.cfg.CUDA == '0' && matrix.cfg.MSVC == true
shell: pwsh
run: |
cd build
cmake -G "NMake Makefiles" ..
- name: Run CMake configure
if: matrix.cfg.CUDA != '0'
shell: pwsh
run: |
cd build
ls
dir "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0"
cmake -G "NMake Makefiles" -DFIRESTARTER_BUILD_TYPE="FIRESTARTER_CUDA" -DCUDAToolkit_ROOT="C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v11.0" ..
- name: Build
shell: pwsh
run: |
cd build
cmake --build . -j2
- name: Copy Hwloc DLL
shell: pwsh
if: matrix.cfg.MSVC == true
run: |
cd build
cp ../lib/Hwloc/sources/contrib/windows/x64/Release/libhwloc-15.dll src
- name: Strip binary
if: matrix.cfg.CUDA == '0' && matrix.cfg.MSVC == false
run: |
cd build
strip src\FIRESTARTER.exe
- name: Test FIRESTARTER
if: matrix.cfg.CUDA == '0'
shell: pwsh
run: .\build\src\FIRESTARTER.exe -t 1
- uses: actions/upload-artifact@v4
if: matrix.cfg.CUDA == '0' && matrix.cfg.MSVC == true && ( github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') || github.event_name == 'pull_request' )
with:
name: FIRESTARTER-windows
retention-days: 1
path: |
build\src\FIRESTARTER.exe
build\src\libhwloc-15.dll
- uses: actions/upload-artifact@v4
if: matrix.cfg.CUDA != '0' && ( github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') || github.event_name == 'pull_request' )
with:
name: FIRESTARTER_CUDA_${{ matrix.cfg.CUDA }}-windows
retention-days: 1
path: |
build\src\FIRESTARTER_CUDA.exe
build\src\libhwloc-15.dll
build-macos:
strategy:
fail-fast: false
matrix:
os: [macos-12, macos-13]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: '0'
- name: Install Homebrew dependencies
run: |
brew upgrade cmake
- name: Create build directory
run: |
mkdir build
- name: Run CMake configure
run: |
cd build
cmake ..
- name: Build
run: |
cd build
make -j2
- name: Strip binary
run: |
cd build
strip src/FIRESTARTER
- name: Test FIRESTARTER
run: |
cd build
./src/FIRESTARTER -t 1
- uses: actions/upload-artifact@v4
if: matrix.os == 'macos-12' && ( github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') || github.event_name == 'pull_request' )
with:
retention-days: 1
name: FIRESTARTER-macOS_12
path: build/src/FIRESTARTER
- uses: actions/upload-artifact@v4
if: matrix.os == 'macos-13' && ( github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') || github.event_name == 'pull_request' )
with:
retention-days: 1
name: FIRESTARTER-macOS_13
path: build/src/FIRESTARTER
create-download:
name: Create download for Website
runs-on: ubuntu-latest
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/') || github.event_name == 'pull_request'
needs: [build-linux-hip-rocm, build-linux, build-macos, build-windows]
steps:
- uses: actions/checkout@v4
with:
fetch-depth: '0'
path: 'sources'
- name: Checkout submodules
run: |
cd sources
git submodule update --init --recursive
- name: Create Build directory
run: |
mkdir build
# Linux
- name: Retrieve FIRESTARTER-linux
uses: actions/download-artifact@v4
with:
name: FIRESTARTER-linux
path: FIRESTARTER
- name: Move binary to right directory
run: |
mv FIRESTARTER/FIRESTARTER FIRESTARTER-linux
rm -rf FIRESTARTER
chmod +x FIRESTARTER-linux
# Linux CUDA 8.0
- name: Retrieve FIRESTARTER_CUDA_8.0-linux
uses: actions/download-artifact@v4
with:
name: FIRESTARTER_CUDA_8.0-linux
path: FIRESTARTER
- name: Move binary to right directory
run: |
mv FIRESTARTER/FIRESTARTER_CUDA FIRESTARTER_CUDA_8.0
rm -rf FIRESTARTER
chmod +x FIRESTARTER_CUDA_8.0
# Linux CUDA 11.0
- name: Retrieve FIRESTARTER_CUDA_11.0-linux
uses: actions/download-artifact@v4
with:
name: FIRESTARTER_CUDA_11.0-linux
path: FIRESTARTER
- name: Move binary to right directory
run: |
mv FIRESTARTER/FIRESTARTER_CUDA FIRESTARTER_CUDA_11.0
rm -rf FIRESTARTER
chmod +x FIRESTARTER_CUDA_11.0
# Linux CUDA HPC
- name: Retrieve FIRESTARTER_CUDA_NVHPC-22.5-linux
uses: actions/download-artifact@v4
with:
name: FIRESTARTER_CUDA_NVHPC-22.5-linux
path: FIRESTARTER
- name: Move binary to right directory
run: |
mv FIRESTARTER/FIRESTARTER_CUDA FIRESTARTER_CUDA_NVHPC-22.5
rm -rf FIRESTARTER
chmod +x FIRESTARTER_CUDA_NVHPC-22.5
# Linux OneAPI
- name: Retrieve FIRESTARTER_ONEAPI_2024.0-linux
uses: actions/download-artifact@v4
with:
name: FIRESTARTER_ONEAPI_2024.0-linux
path: FIRESTARTER
- name: Move binary to right directory
run: |
mv FIRESTARTER/FIRESTARTER_ONEAPI FIRESTARTER_ONEAPI_2024.0
rm -rf FIRESTARTER
chmod +x FIRESTARTER_ONEAPI_2024.0
- name: Retrieve FIRESTARTER_ONEAPI_2023.2.0-linux
uses: actions/download-artifact@v4
with:
name: FIRESTARTER_ONEAPI_2023.2.0-linux
path: FIRESTARTER
- name: Move binary to right directory
run: |
mv FIRESTARTER/FIRESTARTER_ONEAPI FIRESTARTER_ONEAPI_2023.2.0
rm -rf FIRESTARTER
chmod +x FIRESTARTER_ONEAPI_2023.2.0
# Linux HIP 6.2
- name: Retrieve FIRESTARTER_HIP_6.2-linux
uses: actions/download-artifact@v4
with:
name: FIRESTARTER_HIP_6.2-linux
path: FIRESTARTER
- name: Move binary to right directory
run: |
mv FIRESTARTER/FIRESTARTER_HIP FIRESTARTER_HIP_6.2
rm -rf FIRESTARTER
chmod +x FIRESTARTER_HIP_6.2
- name: Retrieve FIRESTARTER-macOS_12
uses: actions/download-artifact@v4
with:
name: FIRESTARTER-macOS_12
path: FIRESTARTER
- name: Move binary to right directory
run: |
mv FIRESTARTER/FIRESTARTER FIRESTARTER-macOS_12
rm -rf FIRESTARTER
chmod +x FIRESTARTER-macOS_12
- name: Retrieve FIRESTARTER-macOS_13
uses: actions/download-artifact@v4
with:
name: FIRESTARTER-macOS_13
path: FIRESTARTER
- name: Move binary to right directory
run: |
mv FIRESTARTER/FIRESTARTER FIRESTARTER-macOS_13
rm -rf FIRESTARTER
chmod +x FIRESTARTER-macOS_13
# Windows
- name: Retrieve FIRESTARTER-windows
uses: actions/download-artifact@v4
with:
name: FIRESTARTER-windows
path: FIRESTARTER
- name: Move binary to right directory
run: |
mv FIRESTARTER/FIRESTARTER.exe FIRESTARTER-windows.exe
mv FIRESTARTER/libhwloc-15.dll libhwloc-15.dll
rm -rf FIRESTARTER
# Windows CUDA
- name: Retrieve FIRESTARTER_CUDA_11.0-windows
uses: actions/download-artifact@v4
with:
name: FIRESTARTER_CUDA_11.0-windows
path: FIRESTARTER
- name: Move binary to right directory
run: |
mv FIRESTARTER/FIRESTARTER_CUDA.exe FIRESTARTER_CUDA_11.0-windows.exe
mv FIRESTARTER/libhwloc-15.dll libhwloc-15.dll
rm -rf FIRESTARTER
# Create tar.gz
- name: Copy CHANGELOG, README and LICENSE
run: |
grep -v '\$\$' < sources/CHANGELOG > CHANGELOG
cat sources/README.md | tail -n +3 > README.md
cp sources/LICENSE LICENSE
cp sources/3rd-party-licenses . -r
cp sources/examples . -r
- name: Create tar.gz
run: |
mv FIRESTARTER-linux FIRESTARTER
rm -rf sources/.git*
tar -cvzf FIRESTARTER.tar.gz CHANGELOG README.md LICENSE libhwloc-15.dll 3rd-party-licenses examples sources FIRESTARTER*
- uses: actions/upload-artifact@v4
with:
retention-days: 5
name: FIRESTARTER.tar.gz
path: FIRESTARTER.tar.gz