compiler performance
1:29:54CppCon 2015: Chandler Carruth "Tuning C++: Benchmarks, and CPUs, and Compilers! Oh My!"
188K views • 11 years ago
CppCon
Chandler Carruth walks through tuning C++ performance, from writing benchmarks to analyzing results on real CPUs and compilers. It focuses on small-scale problems such as loop kernels, data structures and algorithms, and on keeping compilers from optimizing benchmarks away.
1:35:12Modernizing Compiler Design for Carbon Toolchain - Chandler Carruth - CppNow 2023
71K views • 3 years ago
CppNow
Chandler Carruth's CppNow 2023 talk on modernizing compiler design for the Carbon toolchain, using data-oriented design and modern hardware assumptions. It covers lexing, parsing and compact data structures aimed at compiler performance.
1:15:46CppCon 2017: Matt Godbolt “What Has My Compiler Done for Me Lately? Unbolting the Compiler's Lid”
178K views • 9 years ago
CppCon
Matt Godbolt's CppCon 2017 talk shows what modern compilers do with your C++ code, using Compiler Explorer to inspect generated assembly. It covers surprising optimizations and how the tool works.
2:03:12Co-dfns Live Stream: Compiler Design and Architecture
21K views • 9 years ago
Aaron Hsu (arcfide)
A two-hour live stream in which Aaron Hsu explains the architecture, design history and aesthetic of Co-dfns, his parallel APL compiler. He walks through the code and the reasoning behind its dense style.
34:10Anders Hejlsberg on Modern Compiler Construction
25K views • 9 years ago
Kasper
Anders Hejlsberg whiteboards how compilers are taught versus how modern ones are actually built. He explains the shift to compilers as services with incremental, error-tolerant, IDE-oriented design, as in Roslyn and TypeScript.
1:30:03C++Now 2018: Matt Godbolt “What Else Has My Compiler Done For Me Lately?”
11K views • 8 years ago
CppNow
Matt Godbolt, creator of Compiler Explorer, tours surprising optimizations modern compilers perform, such as turning loops into closed-form sums and using popcount instructions. He explores what the compiler does behind the scenes.
52:21ASPLOS Keynote: The Golden Age of Compiler Design in an Era of HW/SW Co-design by Dr. Chris Lattner
52K views • 5 years ago
SiFive
Chris Lattner's ASPLOS 2021 keynote on the golden age of compiler design in an era of hardware and software co-design, covering compiler infrastructure for accelerators and unifying hardware IRs.
1:00:21CppCon 2019: Matt Godbolt “Compiler Explorer: Behind The Scenes”
29K views • 7 years ago
CppCon
Matt Godbolt tells the story of Compiler Explorer, from a hacky basement server to a cloud-scaled service handling tens of thousands of daily requests. He also shows its features and how it is built.
47:51Brandt Bucher – A JIT Compiler for CPython
14K views • 2 years ago
encukou
Brandt Bucher presents his prototype JIT compiler for CPython at the 2023 Core Developer Sprint. He explains the copy-and-patch approach, the implementation and its performance.
2:02:18The Mill CPU Architecture – The Compiler (10 of 13)
12K views • 11 years ago
Mill Computing, Inc.
A long Mill Computing lecture on the Mill CPU's compiler toolchain, covering the specializer that targets family members, scheduling and latency passes, and the belt. It explains how the compiler handles a wide-issue, exposed-pipeline design.
40:48Andy Keep - Writing a Nanopass Compiler
29K views • 12 years ago
ClojureTV
Andy Keep's Clojure/Conj talk on writing a nanopass compiler, built from many single-task passes with formally defined intermediate languages. It covers the framework's origins in a compiler teaching course at Indiana University.
56:55AWS re:Invent 2017: How Netflix Tunes Amazon EC2 Instances for Performance (CMP325)
18K views • 8 years ago
Amazon Web Services
A Netflix performance engineer presents how Netflix tunes EC2 instances, covering instance type choice, Xen modes, SR-IOV and kernel tuning. The goal is near bare-metal performance in the cloud.
1:08:52JVMLS 2015 - Compilers are Databases
16K views • 11 years ago
Java
Martin Odersky's JVM Language Summit 2015 talk argues that compilers can be thought of as databases. It describes design ideas for the Scala compiler and for developer tools.
1:13:41CppCon 2014: Chandler Carruth "Efficiency with Algorithms, Performance with Data Structures"
235K views • 12 years ago
CppCon
Chandler Carruth's CppCon 2014 talk on writing fast C++, explaining why data structure choice and memory layout matter more than clever algorithms. It covers why standard containers like unordered_map perform poorly on modern CPUs.
1:04:48"Performance (Really) Matters" with Emery Berger
7K views • 6 years ago
Association for Computing Machinery (ACM)
Emery Berger argues that performance is hard to measure and deliver on modern systems, showing how code layout and link order can swamp optimization effects. He presents tools that evaluate performance more reliably.
1:00:34High Performance Web Sites and YSlow
90K views • 18 years ago
Google TechTalks
A Google Tech Talk on Yahoo's 14 rules for faster web pages and the YSlow tool. It covers front-end practices like avoiding @import and fixing ETags, with live analysis of popular sites.
1:30:53C++Now 2018: You Can Do Better than std::unordered_map: New Improvements to Hash Table Performance
63K views • 8 years ago
CppNow
Malte Skarupke's C++Now 2018 talk on hash table performance, explaining why std::unordered_map is slow and memory hungry and presenting faster designs, including his bytell hash map.
1:01:09Plenary: Performance Matters - Emery Berger - CppCon 2020
32K views • 6 years ago
CppCon
Emery Berger's CppCon 2020 plenary on why performance is hard on modern hardware after the end of Dennard scaling. It covers benchmarking pitfalls and introduces new profiling tools for finding real bottlenecks.
22:41"Clean" Code, Horrible Performance
1.2M views • 3 years ago
Molly Rocket
Casey Muratori shows how typical 'clean code' object-oriented patterns can cost large factors in performance. He benchmarks them against simpler data-oriented code.
13:45A 10x faster TypeScript
608K views • 1 year ago
Microsoft Developer
Anders Hejlsberg introduces the native port of the TypeScript compiler, written in Go, which promises roughly 10x faster tooling. He demos compiling VS Code and explains where the speedup comes from.
1:13:06Chris Lattner: Compilers, LLVM, Swift, TPU, and ML Accelerators | Lex Fridman Podcast #21
200K views • 7 years ago
Lex Fridman
Lex Fridman interviews Chris Lattner, creator of LLVM, Clang and Swift, about compilers, Swift for TensorFlow, TPUs and ML accelerators. The talk covers how hardware and software meet to produce efficient code.
1:01:31TypeScript is being ported to Go | interview with Anders Hejlsberg
102K views • 1 year ago
Michigan TypeScript
An interview with Anders Hejlsberg, lead architect of TypeScript, about porting the TypeScript compiler to Go. He covers the 10x type-checking speedup, lower memory use, and why Go was chosen.
43:20Zig Roadmap 2023 - Andrew Kelley
77K views • 4 years ago
Zig SHOWTIME
Andrew Kelley's roadmap talk on upcoming Zig compiler milestones, focused on compilation speed. It was given at a Zig community event in 2022.
42:15"Performance Matters" by Emery Berger
502K views • 7 years ago
Strange Loop Conference
Emery Berger explains why performance is hard to measure and deliver on modern hardware, showing how code layout and alignment can swamp optimization effects. He presents Stabilizer for statistically sound evaluation and Coz, a causal profiler.
18:20FIXING the ENTIRE SM64 Source Code (INSANE N64 performance)
3.2M views • 4 years ago
Kaze Emanuar
Kaze Emanuar explains how he rewrote and optimized the Super Mario 64 source code so it runs far faster on real N64 hardware. He covers performance bottlenecks and fixes in detail for his ROM hacks.
2:50:14Simple Code, High Performance
463K views • 5 years ago
Molly Rocket
Casey Muratori's University of Twente guest lecture is a case study in how straightforward code can cut thousands of lines and tens of seconds of runtime down to a few dozen lines running in under a second. It uses concrete examples to show why software is often an order of magnitude slower than it should be.
34:55"Outperforming Imperative with Pure Functional Languages" by Richard Feldman
98K views • 5 years ago
Strange Loop Conference
Richard Feldman explains how pure functional languages can match or beat imperative ones on performance. Compilers can turn immutable code into in-place mutation, avoiding naive copying. The talk draws on his work on the Roc language.
1:15:09Cliff Click @ VMSS16: Bits of Advice For the VM Writer
4K views • 10 years ago
softdevteamuk
Cliff Click, author of HotSpot's JIT compiler, shares hard-won advice for people writing virtual machines at the VMSS16 workshop. Topics include interpreters, JITs and performance lessons.
46:40Andrew Kelley: A Practical Guide to Applying Data Oriented Design (DoD)
415K views • 2 years ago
ChimiChanga
Andrew Kelley, creator of Zig, presents practical data-oriented design techniques for shrinking memory footprint and making programs cache friendly. He ends with a case study of how these ideas sped up the Zig compiler.
35:42Progressive Performance (Chrome Dev Summit 2016)
34K views • 9 years ago
Chrome for Developers
Alex Russell's Chrome Dev Summit 2016 talk on building web experiences that work on slow, flaky networks and low-power devices. It argues developers should focus on the performance of real-world mobile hardware rather than desktop machines.
1:00:58CppCon 2017: Chandler Carruth “Going Nowhere Faster”
113K views • 9 years ago
CppCon
Chandler Carruth shows how to squeeze more performance out of already-optimized C++ code, covering how the CPU executes it. The talk goes into pipelining, branch prediction and speculative execution using benchmarks.
59:21A Crash Course in Modern Hardware by Cliff Click
21K views • 9 years ago
Devoxx
Cliff Click walks through a small performance example on a modern out-of-order CPU. He covers pipelining, ILP, CISC vs RISC, multicore, and why cache misses and the memory subsystem dominate performance.
56:23Speed Up Your JavaScript
136K views • 17 years ago
Google TechTalks
A 2009 Google Tech Talk by Nicholas Zakas on the hidden performance pitfalls of JavaScript. It covers what is fast and slow in the language and how to avoid common bottlenecks.
1:38:36Episode 1: A basic expression evaluator
284K views • 8 years ago
Immo Landwerth (terrajobst)
The first episode of a long live-coding series in which Immo Landwerth builds the Minsk compiler for a small language in C#. It starts with a basic expression evaluator and builds toward a full language.
11:03Resident Evil Village PC DRM: Cracked Code Really Does Run Better - Confirmed
197K views • 5 years ago
Digital Foundry
Digital Foundry investigates why Resident Evil Village on PC runs worse with Capcom's Denuvo DRM than a cracked version. They benchmark and confirm performance and frame-pacing differences.
12:01React without memo
150K views • 4 years ago
React Conf
A React Conf talk by Xuan Huang previewing React Forget, a compiler that automatically memoizes components. It argues for making memoization the default so developers need not write useMemo or useCallback by hand.
55:49CppCon 2016: Chandler Carruth “High Performance Code 201: Hybrid Data Structures"
119K views • 10 years ago
CppCon
Chandler Carruth's CppCon 2016 talk on designing hybrid data structures for performance. He covers cache locality, working-set size and allocation overhead, and why standard C++ containers fall short.
1:21:25Let's prototype a JavaScript JIT compiler!
49K views • 3 years ago
Andreas Kling
Andreas Kling live-codes a prototype JavaScript JIT compiler for the LibJS engine used in SerenityOS and Ladybird. He builds a standalone bytecode VM, a simple interpreter, and then a simple JIT in about 80 minutes.
1:27:46CppCon 2014: Mike Acton "Data-Oriented Design and C++"
862K views • 12 years ago
CppCon
Mike Acton of Insomniac Games argues that a program's purpose is transforming data, and shows how common C++ approaches work against that in performance-critical game development. He covers cache behavior, data layout and the limits of compilers.
25:41Compiling C to printable x86, to make an executable research paper
479K views • 9 years ago
suckerpinch
Tom7 explains how he built a SIGBOVIK 2017 paper made only of printable ASCII bytes that is also a valid DOS executable. He writes a C compiler targeting printable x86 without self-modifying code and solves the puzzles the constraint creates.