Skip to content

Report Apple Metal compatibility - #19

Merged
SamJSui merged 4 commits into
mainfrom
fix/metal-comparison-reporting
Aug 9, 2026
Merged

Report Apple Metal compatibility#19
SamJSui merged 4 commits into
mainfrom
fix/metal-comparison-reporting

Conversation

@SamJSui

@SamJSui SamJSui commented Aug 9, 2026

Copy link
Copy Markdown
Owner

What changed

  • publish the first Apple M3 Pro / Metal correctness and performance matrix
  • record Massively 0.96's Metal pipeline-layout failures without inventing timings
  • make the POSIX comparison runner continue after per-case failures, matching PowerShell
  • condense the README from 421 to 217 lines and lead with current Massively, Apple Metal, and wgpu_sort benchmarks

Why

wgpu-primitives passes all 64 release tests and every benchmark validator through 100M items on Apple Metal. Pinned Massively 0.96 cannot create its compared pipelines: generated layouts request 42 or 47 compute-stage storage buffers while the adapter limit is 29. The old POSIX harness failed fast, which discarded valid wgpu-primitives measurements and hid the compatibility boundary.

The README now presents the current competitive evidence first and links to detailed reports instead of duplicating their history.

User impact

The comparison artifact now distinguishes successful timings from unsupported implementations. Apple users get a reproducible absolute Metal baseline; failed competitor cells remain explicit and are excluded from speedup calculations. New users can see the cross-library results, install the crate, and reach an end-to-end example without navigating a 421-line benchmark narrative.

Upstream tracking

Validation

  • cargo fmt --all --check
  • cargo clippy --all-targets --all-features -- -D warnings
  • cargo test --release --all-targets - 64 tests passed on RTX
  • cargo package --allow-dirty
  • all relative README links resolve locally
  • python3 benchmarks/massively-comparison/test_aggregate.py - 3 tests passed on M3 Pro
  • sh -n benchmarks/massively-comparison/run.sh
  • clean canonical M3 Pro matrix - 36 successful wgpu-primitives runs, 36 recorded Massively failures, 12 aggregates, 0 fabricated comparisons

@SamJSui
SamJSui marked this pull request as ready for review August 9, 2026 05:04
@SamJSui
SamJSui merged commit 0ffc7f7 into main Aug 9, 2026
2 checks passed
@SamJSui
SamJSui deleted the fix/metal-comparison-reporting branch August 9, 2026 05:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant