Toy Path Tracer in WebAssembly

A toy path tracer, written in C++ and compiled into WebAssembly via Emscripten 1.38.19.

This is running single-threaded, and without SIMD. Performance measured in millions of rays per second; higher number is better.


Animate Progressive

Performance Results

Intel Core i9 8950HK 2.9GHz (MBP 2018)macOS 10.13Safari 115.8
Chrome 705.3
Firefox 635.1
Intel Xeon W-2145 3.7GHzWindows 10Chrome 705.3
AMD ThreadRipper 1950X 3.4GHzWindows 10Firefox 644.7
Chrome 704.6
Edge 174.5
iPhone XS / XR (A12)iOS 12Safari4.4
iPhone 8+ (A11)iOS 12Safari4.0
iPhone SE (A9)iOS 12Safari2.5
Galaxy Note 9 (Snapdragon 845)Android 8.1Chrome2.0
iPhone 6 (A8)iOS 12Safari1.7

Made by Aras Pranckevičius in 2018.