cross-backend-diff

Detect cross-backend VMAF score drift using per-frame JSON and ULP distance.

3|1|Updated May 28, 2026
One-click install
npx skills add https://github.com/VMAFx/vmafx --skill cross-backend-diff
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: cross-backend-diff
Source: https://github.com/VMAFx/vmafx/tree/main/.claude/skills/cross-backend-diff
Command: npx skills add https://github.com/VMAFx/vmafx --skill cross-backend-diff

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill finds score divergence between reference and distributed VMAF results across multiple compute backends, making it easy to catch parity regressions before they reach CI.

Core Features & Use Cases

  • Multi-backend comparison: Runs the same clip pair through CPU, CUDA, SYCL, and Vulkan paths and compares feature scores frame by frame.
  • Precision analysis: Measures absolute differences and ULP distance so you can see whether a mismatch is harmless noise or a real regression.
  • Debugging support: Highlights the worst frame, feature, and backend pair to speed up root-cause analysis after SIMD or GPU changes.
  • Use case: A developer changes a reduction in the CUDA backend and uses this Skill to verify that adm, vif, motion, psnr, and ssim remain within the allowed variance budget.

Quick Start

Ask the assistant to compare a reference clip and a distorted clip across the enabled backends, report the worst per-feature ULP differences, and flag anything above the allowed tolerance.

Frequently Asked Questions about cross-backend-diff

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I detect VMAF score drift across CUDA and CPU backends?

Measure cross-backend VMAF divergence by calculating absolute differences and ULP distance for per-frame JSON scores. ULP distance reveals whether a mismatch is harmless floating-point noise or a real SIMD or GPU regression.

Can I use this to debug VMAF parity regressions after changing SIMD reductions?

Yes, you can debug VMAF parity regressions after SIMD or GPU changes. The analysis highlights the worst frame, feature, and backend pair to accelerate root-cause analysis for adm, vif, motion, psnr, and ssim metrics.

What is the best way to compare VMAF feature scores across multiple GPU backends?

The best way to compare VMAF feature scores across GPU backends is to run clip pairs through multiple compute paths and apply tolerance-based pass-fail reporting to flag any per-feature ULP differences exceeding the allowed variance budget.

Does cross-backend VMAF comparison require per-frame JSON scoring inputs?

Yes, cross-backend VMAF comparison requires per-frame JSON scoring inputs. The Skill consumes these JSON outputs to measure ULP distance and apply tolerance-based pass-fail reporting across CPU, CUDA, SYCL, and Vulkan paths.

Why does my VMAF CUDA backend output show slight score differences from the CPU path?

VMAF CUDA backend output shows slight score differences from the CPU path due to floating-point reduction order changes. Measuring ULP distance determines if this divergence is harmless noise or a failing parity regression.