Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GPU Test Framework #3873

Merged
merged 49 commits into from
Oct 19, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 commits
Select commit Hold shift + click to select a range
9b69660
Begin with a proper CLI
cwfitzgerald Jun 10, 2023
2f8f3c1
Fill out proper CLI
cwfitzgerald Jun 11, 2023
b9d0680
Make publishable
cwfitzgerald Jun 11, 2023
e468a5b
fmt
cwfitzgerald Jun 11, 2023
0192b10
First pass at gpu framework
cwfitzgerald Jun 12, 2023
25b564e
CPU tests working
cwfitzgerald Jun 13, 2023
f771088
Implement adapter selection
cwfitzgerald Jun 13, 2023
3b82b5f
Finish gpu-test conversion
cwfitzgerald Jun 16, 2023
6c79d5f
Merge remote-tracking branch 'origin/trunk' into test-framework
cwfitzgerald Jun 16, 2023
27d8b6b
Build out simple xtask for testing
cwfitzgerald Jun 16, 2023
80ccf26
No fail fast
cwfitzgerald Jun 16, 2023
ce615e9
Use adapter index in test name
cwfitzgerald Jun 16, 2023
1762d53
Merge remote-tracking branch 'origin/trunk' into test-framework
cwfitzgerald Jun 22, 2023
824c0ec
Various adjustments
cwfitzgerald Jun 22, 2023
3ac189a
Asyncify infrastructure
cwfitzgerald Jun 22, 2023
6e54c4d
Convert to macro based tests
cwfitzgerald Sep 28, 2023
2fd5b41
Fix type name
cwfitzgerald Sep 28, 2023
4ef17b8
Merge branch 'trunk' into test-framework
cwfitzgerald Sep 28, 2023
e0596e1
Simple stuff
cwfitzgerald Sep 28, 2023
b15d74a
CI stuff
cwfitzgerald Sep 28, 2023
0d82a2a
Format
cwfitzgerald Sep 28, 2023
28dd4e3
Merge remote-tracking branch 'upstream/trunk' into test-framework
cwfitzgerald Oct 4, 2023
16d27d2
Update
cwfitzgerald Oct 4, 2023
f2df084
Get wasm working
cwfitzgerald Oct 5, 2023
9e9a982
Merge remote-tracking branch 'upstream/trunk' into test-framework
cwfitzgerald Oct 5, 2023
2c0c6ca
Fix wasm builds
cwfitzgerald Oct 5, 2023
1b7152f
Fix more wasm builds
cwfitzgerald Oct 5, 2023
40399dc
Clean up canvas creation
cwfitzgerald Oct 11, 2023
201d9ad
Merge remote-tracking branch 'upstream/trunk' into test-framework
cwfitzgerald Oct 11, 2023
7901320
Fix compilation
cwfitzgerald Oct 11, 2023
3c11992
Fix wasm-webgl compilation
cwfitzgerald Oct 11, 2023
3e7f28a
Fix webgl failure
cwfitzgerald Oct 11, 2023
6100ba5
Fix CI?
cwfitzgerald Oct 11, 2023
5cd6330
Reorg
cwfitzgerald Oct 11, 2023
3eab61b
Format
cwfitzgerald Oct 11, 2023
a72c2c4
Add documentation
cwfitzgerald Oct 12, 2023
928c840
Fix readme
cwfitzgerald Oct 12, 2023
4cc4883
Disable swiftshader
cwfitzgerald Oct 13, 2023
b2ced48
Enable lavapipe
cwfitzgerald Oct 13, 2023
86c1bdb
Significantly reduce the amount of skipped tests
cwfitzgerald Oct 13, 2023
01b06a5
Clippy
cwfitzgerald Oct 13, 2023
1ba4ee9
Too optimistic about zero_init_workgroup_memory
cwfitzgerald Oct 13, 2023
52d5c55
Fix webgl2
cwfitzgerald Oct 13, 2023
b5b9ac3
Merge remote-tracking branch 'origin/trunk' into test-framework
cwfitzgerald Oct 13, 2023
cb62a2c
ZIWM
cwfitzgerald Oct 14, 2023
2aebfbc
Disable wgpu_backend
cwfitzgerald Oct 14, 2023
d76b9a6
Enable metal validation
cwfitzgerald Oct 14, 2023
c7c7155
Remove unnecessary skip on lavapipe
cwfitzgerald Oct 14, 2023
6ce403a
Merge remote-tracking branch 'origin/trunk' into test-framework
cwfitzgerald Oct 18, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .deny.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ skip-tree = [
{ name = "wgpu-info" },
]
skip = [
{ name = "wgpu" }
{ name = "wgpu" },
{ name = "fastrand" }
]
wildcards = "deny"

Expand Down
32 changes: 8 additions & 24 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -270,17 +270,14 @@ jobs:
# Windows
- name: Windows x86_64
os: windows-2022
backends: dx12

# Mac
- name: Mac aarch64
os: [self-hosted, macOS]
backends: vulkan metal

# Linux
- name: Linux x86_64
os: ubuntu-22.04
backends: vulkan gl

name: Test ${{ matrix.name }}
runs-on: ${{ matrix.os }}
Expand All @@ -294,16 +291,10 @@ jobs:
with:
tool: cargo-nextest,cargo-llvm-cov

- name: install swiftshader
if: matrix.os == 'ubuntu-22.04'
shell: bash
- name: Install Repo MSRV toolchain
run: |
set -e

mkdir -p swiftshader
curl -LsSf https://github.com/gfx-rs/ci-build/releases/latest/download/swiftshader-linux-x86_64.tar.xz | tar -xf - -C swiftshader

echo "VK_ICD_FILENAMES=$PWD/swiftshader/vk_swiftshader_icd.json" >> $GITHUB_ENV
rustup toolchain install ${{ env.REPO_MSRV }} --no-self-update --profile=minimal
cargo -V

- name: install llvmpipe, vulkan sdk
if: matrix.os == 'ubuntu-22.04'
Expand All @@ -317,8 +308,10 @@ jobs:
wget -qO - https://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo apt-key add -
sudo wget -qO /etc/apt/sources.list.d/lunarg-vulkan-jammy.list https://packages.lunarg.com/vulkan/lunarg-vulkan-jammy.list

sudo add-apt-repository ppa:kisak/kisak-mesa

sudo apt-get update
sudo apt install -y libegl1-mesa libgl1-mesa-dri libxcb-xfixes0-dev vulkan-sdk
sudo apt install -y libegl1-mesa libgl1-mesa-dri libxcb-xfixes0-dev vulkan-sdk mesa-vulkan-drivers

- name: disable debug
shell: bash
Expand All @@ -334,22 +327,12 @@ jobs:
with:
key: test-${{ matrix.os }}-${{ env.CACHE_SUFFIX }}

- name: run wgpu-info
shell: bash
run: |
set -e

cargo llvm-cov --no-cfg-coverage run --bin wgpu-info --no-report --features vulkan-portability

- name: run tests
shell: bash
run: |
set -e

for backend in ${{ matrix.backends }}; do
echo "======= NATIVE TESTS $backend ======";
WGPU_BACKEND=$backend cargo llvm-cov --no-cfg-coverage nextest --no-fail-fast --no-report --features vulkan-portability
done
cargo xtask test --llvm-cov

- uses: actions/upload-artifact@v3
if: always() # We want artifacts even if the tests fail.
Expand Down Expand Up @@ -421,6 +404,7 @@ jobs:
- name: run rustfmt
run: |
cargo fmt -- --check
cargo fmt --manifest-path xtask/Cargo.toml -- --check

check-cts-runner:
name: Clippy cts_runner
Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,6 @@ cts/

# Readme says to put angle in working directory
*.dll

# Cached GPU config
.gpuconfig
Loading