Skip to content

ADRs tagged metal

Auto-generated by scripts/docs/generate-adr-by-tag.sh. Edit ADR Tags: lines to update.

50 ADR(s) carry this tag.

ID Title
ADR-0361 Metal compute backend — scaffold-only audit-first PR (T8-1)
ADR-0374 Build-time-optional public APIs return -ENOSYS when disabled
ADR-0420 Metal backend runtime (T8-1b)
ADR-0421 Metal first kernel — integer_motion_v2 (T8-1c)
ADR-0422 CLI HIP and Metal Backend Selectors
ADR-0423 Metal IOSurface zero-copy import (T8-IOS)
ADR-0437 Metal public-header install and vmaf_metal_import_state declaration
ADR-0460 Dispatch-strategy registry audit 2026-05-15
ADR-0484 Extend kernel-scaffolding.md with HIP and Metal lifecycle contract
ADR-0486 Codify the three-function GPU backend context-API contract in docs
ADR-0490 float_ms_ssim Metal port
ADR-0545 Wire or delete dead Vulkan/Metal feature-extractor source files
ADR-0576 ffmpeg-patches n8.1.1 full-feature-exposure sync
ADR-0587 Real Metal Compute Kernels for CAMBI
ADR-0589 Metal float_ssim option parity — enable_lcs, enable_db, clip_db, scale
ADR-0868 GPU backend kernel parity-test coverage gap-fill
ADR-0928 VmafPicture v2 — explicit per-backend GPU state
ADR-0959 Metal kernel parity coverage round 4 — closeout
ADR-0973 Master CI fixes — Metal MS-SSIM fixture dim + ssimulacra2 icpx XYB bit-exactness
ADR-1030 HIP adm_decouple dangling body + VIF wavefront 32-bit carry + Metal motion vertical halo
ADR-1041 Fix CI RED — Go metal option type + Rust AVX-512 test guard
ADR-1142 Whole-codebase standards; lint debt only ratchets down
ADR-1176 Metal motion_v2 mirror closeout and reflect-101 parity contract
ADR-1193 Opt-in uncapped option splits the PSNR infinity sentinel from the truncation
ADR-1194 One integer-ADM angle_flag predicate for every backend
ADR-1204 GPU ADM contrast-masking twins clamp the far edge instead of mirroring it
ADR-1205 The ssimulacra2 FMA unification extends to the scalar fallback and every GPU host copy
ADR-1214 The float-ADM GPU twins ignore adm_csf_scale in Watson mode and share the CPU's option aliases
ADR-1219 The HIP and Metal CAMBI twins use the shared TVI bisection and the CPU's border rules
ADR-1220 The GPU float-ADM kernels honour adm_p_norm, adm_bypass_cm and adm_skip_scale0
ADR-1322 Restore enable_chroma option parity on integer_psnr_metal
ADR-1325 Normalize integer ADM Barten weights with one exponent per scale
ADR-1334 Extend MS-SSIM option parity to the Metal twin
ADR-1402 Integer ADM keeps the scale-0 masking centre tap in int32 and clamps the excess in int64
ADR-1472 The integer ADM weight limits follow from the contrast-masking cube and the largest wavelet coefficient of a scale
ADR-1475 The quantisation step of integer ADM is Netflix's expression again, so vmaf_v0.6.1 returns Netflix master's bits
ADR-1489 The CSF weights of float ADM are Netflix's float arithmetic again, so float_adm differs from Netflix by the division alone
ADR-1493 macOS tester bundle, an exception to container-only publishing
ADR-1496 The macOS tester bundle runs the parity gate's Metal cells and reports per state row what it measured
ADR-1498 Metal twins take the exact designs of their CUDA, HIP and SYCL twins, on a strict FP kernel policy
ADR-1601 integer VIF forms the denominator log argument sigma_nsq + sigma1_sq in uint32_t
ADR-1679 The Metal IOSurface import reads NV12 and P010 surfaces itself, and the FFmpeg filter imports whole frames
ADR-1685 A post-1.0 embedding milestone: zero-copy device-frame import with fences, asynchronous window scores, and an unchanged licence
ADR-1762 Every translation unit is read by a clang-tidy lane or excepted by name
ADR-1806 Run Metal kernel files on the host through a Metal Shading Language shim in tests
ADR-1829 RC4 owns the whole device-memory import API, not only the first full Rust metric
ADR-1874 The vmaf CLI reports its usable backends; the score-backend selectors read that report
ADR-1917 The integer ADM scale-0 horizontal and vertical weight limit is 43900, set by the CSF stage's 16-bit magnitude
ADR-1918 Samples above 2^bpc - 1 are invalid input; an opt-in check refuses them
ADR-1929 VMAFx device frames, fences and the import rule: the shared contract the backend lanes implement