Files
gridcraft/docs/hardware-parity.md
T
vangel76andClaude Opus 5.5 da99015b11 Windows: never load Vulkan by default; OpenGL fallback when DirectX 12 can't start (#120)
Enumerating Vulkan adapters crashes inside Intel's igvk64.dll on some UHD
Graphics drivers, before any Rust error handling runs. Since #22 the
Windows instance is DirectX 12 only; this keeps Vulkan out of every
default path and adds two fallbacks so DX12-only can't leave a PC without
a window:

- A DirectX 12 probe before eframe starts: no hardware adapter that meets
  eframe's limits -> OpenGL (plus DX12/WARP as last resort when WARP is
  all DX12 offers).
- If run_native fails with a wgpu error before the app was created, start
  once more with the other of DX12/GL (eframe reuses its event loop).

WGPU_BACKEND still overrides everything, and nothing else is tried then.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 12:36:52 +02:00

2.6 KiB
Raw Blame History

Hardware parity

Last reviewed: 2026-10-10 · Last updated: 2026-10-11 · Change: trivial (Windows renderer fallback, #120) · Target: Microsoft Excel (Microsoft 365), Excel for Mac 16.113.4

The hardware Excel uses, per platform, against GridCraft. Part of target-app-parity.md. Hardware: ~40% ready, 25–40 h (estimated).

Hardware feature Excel GridCraft (macOS · Windows · Linux · BSD · web) Gap and estimate
Multi-core recalculation Multi-threaded recalculation on all cores (Windows and Mac), configurable thread count Single-threaded everywhere (no threading in crates/calc) Parallel recalc of independent dependency chains on native builds; WASM stays single-threaded or uses workers later: 12–18 h
GPU rendering of the grid and charts DirectX / Metal accelerated drawing wgpu: Metal · DirectX 12 (default since 10-08; OpenGL when DirectX 12 has no GPU driver or fails to start; Vulkan only on request, so the Intel UHD igvk64.dll crash (#120) can't happen) · Vulkan/GL · Vulkan/GL · WebGPU or WebGL2 At parity in kind. Driver problems: screen flashing on Windows 11 (#76): 2–4 h
Pen and touch (Draw tab) Pen pressure and tilt, eraser end, touch mode, Ink to Shape, ink replay Pen, highlighter, eraser, Ink to Shape with mouse/pen input; no pressure or tilt, no touch mode Pressure-sensitive strokes where winit reports force; touch-friendly ribbon spacing: 4–6 h
Trackpad and mouse Smooth scrolling, pinch zoom, horizontal scroll, Magic Mouse Smooth scrolling and zoom via egui Verify pinch zoom on each platform: 1–2 h
Multiple windows and monitors One window per workbook, New Window for the same workbook, per-monitor DPI One window; multiple workbooks switch inside it (#162; PR #171) Native window per workbook, New Window, Arrange All across monitors: 6–8 h
High-DPI and display scaling yes yes (display scale matched to desktop density) —
Accessibility hardware (screen readers, braille displays, switch control) Narrator, JAWS, NVDA, VoiceOver AccessKit enabled in eframe; grid cells and ribbon not yet exposed as an accessible tree Counted under UI (ui-parity.md)
Printers System print with driver options Desktop prints through the system dialog via PDF; web exports only Counted under print

Revision history

Date Change Summary
2026-10-11 trivial Windows: OpenGL fallback when DirectX 12 has no GPU or fails to start; Vulkan never by default (#120)
2026-10-10 major Created: single-threaded calc, wgpu rendering, no pen pressure, single window