camenduru's picture
instant-ngp build
7873319
name: CI
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
build_linux:
name: Build on linux systems
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: ubuntu-22.04
cuda: "11.7"
arch: 86
python: "3.11"
- os: ubuntu-18.04
cuda: "10.2"
arch: 75
python: "3.10"
- os: ubuntu-18.04
cuda: "10.2"
arch: 70
python: "3.9"
- os: ubuntu-18.04
cuda: "10.2"
arch: 61
python: "3.8"
- os: ubuntu-18.04
cuda: "10.2"
arch: 53
python: "3.7"
- os: ubuntu-18.04
cuda: "10.2"
arch: 37
python: "3.6"
env:
build_dir: "build"
config: "Release"
TCNN_CUDA_ARCHITECTURES: ${{ matrix.arch }}
steps:
- name: Install dependencies
run: sudo apt-get update && sudo apt-get install build-essential python3-dev libglfw3-dev libglew-dev libxinerama-dev libxcursor-dev libxi-dev
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python }}
- run: pip install -r requirements.txt
- name: Install CUDA
env:
cuda: ${{ matrix.cuda }}
run: ./dependencies/cuda-cmake-github-actions/scripts/actions/install_cuda_ubuntu.sh
shell: bash
- name: Prepare Vulkan SDK
uses: humbletim/setup-vulkan-sdk@v1.2.0
with:
vulkan-query-version: latest
vulkan-components: Vulkan-Headers, Vulkan-Loader
- name: CMake
run: cmake . -B ${{ env.build_dir }} -DCMAKE_BUILD_TYPE=${{ env.config }}
- name: Build
working-directory: ${{ env.build_dir }}
run: cmake --build . --target all --verbose -j `nproc`
build_windows:
name: Build on Windows
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: windows-2019
visual_studio: "Visual Studio 16 2019"
cuda: "11.5.1"
arch: 86
python: "3.11"
recommended_gpus: "RTX 3000 & 4000 (Ampere & Ada)"
- os: windows-2019
visual_studio: "Visual Studio 16 2019"
cuda: "11.5.1"
arch: 75
python: "3.10"
recommended_gpus: "RTX 2000 (Turing)"
- os: windows-2019
visual_studio: "Visual Studio 16 2019"
cuda: "11.5.1"
arch: 70
python: "3.9"
recommended_gpus: "GTX 1000 (Pascal)"
- os: windows-2019
visual_studio: "Visual Studio 16 2019"
cuda: "11.5.1"
arch: 61
python: "3.8"
- os: windows-2019
visual_studio: "Visual Studio 16 2019"
cuda: "11.5.1"
arch: 53
python: "3.7"
- os: windows-2019
visual_studio: "Visual Studio 16 2019"
cuda: "11.5.1"
arch: 37
python: "3.6"
env:
build_dir: "build"
config: "Release"
TCNN_CUDA_ARCHITECTURES: ${{ matrix.arch }}
steps:
- uses: actions/checkout@v3
with:
submodules: recursive
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python }}
- run: pip install -r requirements.txt
- name: Install CUDA
env:
cuda: ${{ matrix.cuda }}
visual_studio: ${{ matrix.visual_studio }}
shell: powershell
run: .\dependencies\cuda-cmake-github-actions\scripts\actions\install_cuda_windows.ps1
- name: Prepare Vulkan SDK
uses: humbletim/setup-vulkan-sdk@v1.2.0
with:
vulkan-query-version: latest
vulkan-components: Vulkan-Headers, Vulkan-Loader
- name: CMake
run: cmake . -B ${{ env.build_dir }} -G "${{ matrix.visual_studio }}" -A x64
- name: Build
working-directory: ${{ env.build_dir }}
run: cmake --build . --config ${{ env.config }} --target ALL_BUILD --verbose
- name: Upload release
if: ${{ matrix.recommended_gpus }}
uses: actions/upload-artifact@v3
with:
name: Instant NGP for ${{ matrix.recommended_gpus }}
path: |
README.md
LICENSE.txt
${{ env.build_dir }}/instant-ngp.exe
${{ env.build_dir }}/nvngx_dlss.dll
configs/
docs/nerf_dataset_tips.md
docs/assets_readme/
data/