summaryrefslogtreecommitdiffstats
path: root/.github/workflows
diff options
context:
space:
mode:
authorvenkataram-nv <vedavamadath@nvidia.com>2024-08-13 11:44:19 -0700
committerGitHub <noreply@github.com>2024-08-13 11:44:19 -0700
commitf4ff4236e1eb80a8274b219d6e4c3813c15be9cd (patch)
tree90a5f3db2e0630cda2f5e95d14c0db9cee516233 /.github/workflows
parentee052a9e9bd7c0d233816556ebe8f0078bd9ec4d (diff)
GitHub action benchmark (#4804)
Adds a new Github CI action for benchmarking the slangc compiler on the MDL shaders. For now, the results are only dumped to the output of the CI, which can be later viewed through raw logs. The next step is to use github-action-benchmark to push these results into a page which will show the benchmark results over time as commits are pushed.
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/benchmark.yml47
1 files changed, 47 insertions, 0 deletions
diff --git a/.github/workflows/benchmark.yml b/.github/workflows/benchmark.yml
new file mode 100644
index 000000000..441334055
--- /dev/null
+++ b/.github/workflows/benchmark.yml
@@ -0,0 +1,47 @@
+name: Benchmark
+
+on:
+ push:
+ branches: [master]
+ paths-ignore:
+ - 'docs/**'
+ - 'LICENCE'
+ - 'CONTRIBUTION.md'
+ - 'README.md'
+ pull_request:
+ branches: [master]
+ paths-ignore:
+ - 'docs/**'
+ - 'LICENCE'
+ - 'CONTRIBUTION.md'
+ - 'README.md'
+
+jobs:
+ build:
+ runs-on: [Windows, benchmark, self-hosted]
+ steps:
+ - uses: actions/checkout@v3
+ with:
+ submodules: 'true'
+ fetch-depth: '0'
+ - name: Common setup
+ uses: ./.github/actions/common-setup
+ with:
+ os: windows
+ compiler: cl
+ platform: x86_64
+ config: release
+ build-llvm: true
+ - name: Build Slang
+ run: |
+ cmake --preset default --fresh -DSLANG_SLANG_LLVM_FLAVOR=USE_SYSTEM_LLVM -DCMAKE_COMPILE_WARNING_AS_ERROR=false
+ cmake --workflow --preset release
+ - name: Setup
+ run: |
+ cd tests/mdl
+ pip install prettytable argparse
+ - name: Run benchmark
+ run: |
+ cd tests/mdl
+ Copy-Item -Path C:\slang-benchmarks -Destination . -Recurse
+ python compile.py --samples 16 --target dxil --ci \ No newline at end of file