v0.5.17 — Raspberry Pi 5 Build & Full Test-Suite Pass
Test fix
NeonLinalgTest.TrsvLower64x64Randomtolerance corrected — The lower-triangular solve test assertedEXPECT_NEAR(..., 1e-3), while itsTrsvUpper64x64Randomtwin used5e-3. On Raspberry Pi 5 (Cortex-A76) the float32 forward-substitution over 64 rows accumulates ~1.1e-3of round-off, landing just over the tighter bar at one element. The assertion is now5e-3, matching the upper-triangular twin and reflecting expected single-precision error growth. No kernel code changed — the NEON solver was already correct to float32 precision.
Build / tooling
- requirements.txt now records system (apt) dependencies — Added a documented section listing the C++/CMake toolchain plus the Vulkan shader packages (
glslang-tools,glslc,spirv-tools). Withoutglslang-tools/glslangValidator, CMake configures but skips shader compilation and the Vulkan backend has no compute shaders to load. .gitignorenow excludes theoptenv/venv and*.spvbuild artifacts.- Version bumped to
0.5.17.
Verification
Verified on Raspberry Pi 5 (aarch64, NEON + SVE2 + Vulkan, CUDA off): all 16/16 test suites pass, including the four Vulkan suites running compiled SPIR-V on the VideoCore VII GPU.
Full changelog: v0.5.16...v0.5.17