Bringing SIMD to the Web via Dart
InfoQ1 HN recommender · recommended in 1 month, 2013–2014
talk · intermediate · 2013–2014 on HN
John McCutchan of Google explains how Dart and the Dart VM expose SIMD instructions to speed up web software. He covers what SIMD is and how it applies to graphics and games.
Pointed to as the original talk by the author of the SIMD-in-JavaScript proposal, whenever SIMD on the web comes up.
Up next
16 mo on HNHow Python was Shaped by leaky Internals, Armin Ronacher, Flask framework
Видео с мероприятий {speach!
15 HN recommender · 2017–2025
11 mo on HNCppCon 2015: Andrei Alexandrescu “std::allocator...”
CppCon
7 HN recommender · 2017–2025
12 mo on HNPreventing the Collapse of Civilization / Jonathan Blow (Thekla, Inc)
DevGAMM
14 HN recommender · 2020–2025
10 mo on HN"Performance Matters" by Emery Berger
Strange Loop Conference
12 HN recommender · 2019–2025
11 mo on HNThe Thirty Million Line Problem
Molly Rocket
11 HN recommender · 2018–2024
10 mo on HNCppCon 2017: Matt Kulukundis “Designing a Fast, Efficient, Cache-friendly Hash Table, Step by Step”
CppCon
9 HN recommender · 2018–2026
10 mo on HNErlang Factory 2014 - That's 'Billion' with a 'B': Scaling to the Next Level at WhatsApp
Erlang Solutions
6 HN recommender · 2014–2022
9 mo on HNHow Crash Bandicoot Hacked The Original Playstation | War Stories | Ars Technica
Ars Technica
13 HN recommender · 2020–2026
9 mo on HN"How NOT to Measure Latency" by Gil Tene
Strange Loop Conference
9 HN recommender · 2015–2026
10 mo on HNRefterm Lecture Part 1 - Philosophies of Optimization
Molly Rocket
10 HN recommender · 2021–2026
9 mo on HNCppCon 2014: Mike Acton "Data-Oriented Design and C++"
CppCon
9 HN recommender · 2015–2026
8 mo on HNJonathan Blow - Preventing the Collapse of Civilization (English only)
bus
11 HN recommender · 2019–2023
3 comments from Hacker News
Check "Bringing SIMD to the Web via Dart" by John McCutchan: ▶ this video He's also the guy wrote the proposal for ECMAScript: link Also, using SIMD is way easier than using shaders. You just write something like this: double average (Float32x4List list) { var n = list.length; var sum = new Float32x4.zero(); for (int i = 0; i < n; i++) { sum += list[i]; } var total = sum.x + sum.y + sum.z + sum.w; return total / (n * 4); } Instead of: double average (Float32List list) { var n = list.length; var sum = 0.0; for (int i = 0; i < n; i++) { sum += list[i]; } return sum / n; }
They've also published a new RayTracer OO benchmark showing the Dart VM far out performing V8: link Guessing being able to use native SIMD instructions inside the Dart VM should help with gaming and other graphics intensive apps: ▶ this video
Why Dart? SIMD - Single Instruction Multiple Data - Speeds up things like WebGL, added to Dart VM, not available in JavaScript except through an experimental technique in FireFox ▶ this video