Bringing SIMD to the Web via Dart
InfoQ1 HN recommenders · 2013–2014
11K views · talk · dated · Uploaded 2013-03-12
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.
53:22Ruby Conf 12 - Y Not- Adventures in Functional Programming by Jim Weirich
Confreaks
2:25:52The spelled-out intro to neural networks and backpropagation: building micrograd
Andrej Karpathy
49:55How Python was Shaped by leaky Internals, Armin Ronacher, Flask framework
Видео с мероприятий {speach!
38:47RailsConf 2014 - All the Little Things by Sandi Metz
Confreaks
26:53What the heck is the event loop anyway? | Philip Roberts | JSConf EU
JSConf
36:45Rich Harris - Rethinking reactivity
You Gotta Love Frontend
1:12:27CppCon 2015: Andrei Alexandrescu “std::allocator...”
CppCon
1:00:19How To Design A Good API and Why it Matters
Google TechTalks
3 comments from Hacker News
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 [VIDEO]
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: [VIDEO]
Check "Bringing SIMD to the Web via Dart" by John McCutchan: [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; }