Web AI Bench

WebNN · WebGPU · WASM, measured in your browser

online offline: checking…
01Capabilities
WebNN
checking…
WebGPU
checking…
WebAssembly
checking…
Cross-origin isolation
checking…
Storage
checking…
Built-in AI (Prompt API)
checking…
Device availability — what the browser compiles for when you ask for each device
DevicecreateContextBuildgraph.devicesVerdict
checking…

02Backend → pipeline(task, model, { device, dtype })

Resolving…

03aImage classification
selected image
    03bSpeech to text · Whisper
    03cPrompt API → Transformers.js fallback detecting…
    
      
    04Fallback trace

    Requested vs. what JS can observe: each WebNN context and graph the library creates (options passed, time, graph.devices), this demo's own chain (NPU → GPU → CPU → WASM on errors), ORT op placement (turn on verbose ORT op log), and per-run timings. A missing NPU does not throw: when graph.devices is empty the browser picked and JS cannot see what. Then use Task Manager / chrome://histograms (README → “Tracing NPU fallback”).

    05Benchmark board
    TaskModelBackenddtypeDownloadLoad1st runAvg (n)tok/sResult

    Load = pipeline construction incl. session creation (cached files after first visit). 1st run includes backend warm-up/compilation. Avg = mean of n timed runs after the first.

    06Offline & caches
    …
    07Console log