Commit Graph

15 Commits

Author SHA1 Message Date
Adrià 39890031e3
Merge pull request #4591 from MiniRML/fix/oracle-input-rows
fix(oracle): validate input words before tool lookup
2026-10-13 17:25:30 +02:00
MiniRML 17a3d8a1a0 fix(oracle): honor current target override 2026-10-12 09:27:33 -07:00
MiniRML 521cc95b18 fix(oracle): validate input words before tool lookup 2026-10-12 09:26:05 -07:00
MrMha cf1195ad20 fix(hw-oracle): narrow cache PR and normalize runtime paths 2026-10-11 19:31:39 +04:00
MrMha 563b4738a5 fix(hw-oracle): invalidate cached builds when inputs change 2026-10-11 18:24:42 +04:00
Adrià f4b7151097
Merge pull request #2510 from Edd016/fix/hw-oracle-mingw-lld
fix(hw-oracle): select the AMDGPU ELF emulation when linking kernels
2026-10-11 11:33:58 +02:00
MarcZX100 70d4903158 fix(hw-oracle): batch wave64 probes into 512-row dispatches 2026-10-10 18:28:46 +00:00
ed a83bfa6813 fix(hw-oracle): select the AMDGPU ELF emulation when linking kernels
LLD built for a MinGW host runs the COFF linker when ld.lld gets no -m option,
so it rejects the AMDGPU object with "unknown file type" and the
hardware_oracle test fails on Windows with WinLibs LLVM in PATH. Passing
-m elf64_amdgpu selects the ELF linker on every host.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 17:09:53 -07:00
ale 8d30c27589 feat(hw-oracle): make the group segment size an option
The template allocated a fixed 4 KiB of LDS, so kernels with immediate
offsets past it could not run. --lds (Python lds) sets the group segment
size in bytes, up to 64 KiB, with 4096 as the default.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-09 12:47:59 -03:00
Dean Galvin e0a8297a7b fix(hw-oracle): skip the wave64 assembly test when clang has no AMDGPU target 2026-10-09 23:05:41 +13:00
Dean b7218b3cec
Merge pull request #1962 from CouchRiv/fix-hw-oracle-wave64
fix(hw-oracle): assemble wave64 bodies in wave64 mode
2026-10-09 22:43:05 +13:00
Alex dc902b2eae fix(hw-oracle): assemble wave64 bodies in wave64 mode
clang assembled every body as wave32, so a --wave64 body that used vcc
or an SGPR pair as a condition failed with "operands are not valid for
this GPU or mode". Pass -mwavefrontsize64 on wave64 runs.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-08 23:03:22 -04:00
SK Arin 466ebde23c fix(oracle): publish cached executable only after successful build 2026-10-08 17:16:36 +05:30
Muhammad Umair f2b6b5a1a9 fix(oracle)!: require explicit float modes
BREAKING CHANGE: CLI and Python callers must supply all seven float
controls. Add clamp, rounding and FP16 overflow settings so hardware
measurements cannot silently use an unintended mode.

Refs #981
2026-10-07 14:58:28 +05:00
Adrià Franch f617b40a45 feat(tools): add a hardware oracle for RDNA instruction semantics
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-06 13:54:28 +02:00