Modern CPUs Assign Registers To Speed Up Your Code - Computerphile
78K views · Nov 12, 2024 · Education
Comments · 160
@jb31842 · 1 year ago
- Matt Godbolt is a genius at understanding and explaining CPUs<br>- Can't get a webcam to focus right
37
@erichobbs4042 · 1 year ago
I remember watching Hackers back in the 90's, and there's a scene where they are trying to get some files downloaded. You get a close-up of the keyboard and you can see K E R M I T typed out. I remember thinking, "Boy I hope that's the username and not the protocol , otherwise this is going to take forever."
9
@flymypg · 1 year ago
With apologies to Dire Straits: "We got to move these register mappings. Custom program delivery!"
5
@ΝίκοςΙστοσελίδα · 1 year ago
God, aren't you on a roll! Malleable encryption, Matt Godbolt, the content is getting ever better
22
@jwmittag · 1 year ago
And when you mispredict a branch and need to wipe the board clean, but you leave some smudges behind, that’s how you get transient execution vulnerabilities like the (in)famous Spectre and Meltdown.
227
@joehopfield · 1 year ago
The 1970s PDP/11 instruction set was so elegant you could learn to read the machine code from octal in a few minutes.
52
@Veptis · 7 months ago
The Godbolt videos are amazing. Will we get a season 4 where it's all of GPUs and their methods of parallelism?
@Eidolon2003 · 1 year ago
These videos have been absolutely fantastic Matt, thanks! And double thanks for your website :)
29
@shadamethyst1258 · 1 year ago
Amazing presentation. Matt Godbolt really knows his stuff (not that surprising :p), but he also knows how to explain it in simple terms. I was currently learning this (alongside a few subjects), so that's gonna help!
9
@vadrif-draco · 1 year ago
That was really useful and fun, thanks! This entire series has been great so far :)
5
@Howtheheckarehandleswit · 1 year ago
This kinda makes me want to design a turbo-6502 that has the same interface as the classic 6502, but does these sorts of clever tricks to run old software incredibly fast.
6
@marcelopacheco2479 · 1 month ago
An Intel CPU has 280 registers per core, but not per thread. With SMT (hyper threading) it shares the pipeline and cache between two tasks at a time, appearing like two physical CPUs to code executing on them. Pipeline stalls (due to register dependencies) are opportunities to give more attention to the other task.
Up next

Computer Timescales Mapped onto Human Timescales - Computerphile
Computerphile · 213K views

How CPUs do Out Of Order Operations - Computerphile
Computerphile · 110K views

The Change from Roman Numerals - Numberphile
Numberphile · 311K views

CPU Pipeline - Computerphile
Computerphile · 103K views

Subroutines in Low Level Code - Computerphile
Computerphile · 73K views

How Branch Prediction Works in CPUs - Computerphile
Computerphile · 114K views

The Hidden Structure of Rule 30
Eric Rowland · 253K views

Implementing Undo - Computerphile
Computerphile · 97K views

LLMs Explained: Tokens, Embeddings, Transformers and More
Syntax · 861K views

CPU Summary - Computerphile
Computerphile · 37K views

Reliability Lessons From SQLite - Richard Hipp | SSW 2026
Software Should Work · 139K views

What Every Programmer Should Know about How CPUs Work • Matt Godbolt • GOTO 2024
GOTO Conferences and Matt Godbolt · 194K views

Why AI Tokens are so Expensive - Computerphile
Computerphile · 820K views

Why Your Computer Is Slow — Task Manager Can't Tell You, but TMOG can!
Dave's Garage · 460K views

Architecture All Access: Modern CPU Architecture Part 1 – Key Concepts | Intel Technology
Intel Technology · 299K views

Why Did It Take 1,877 Years to Invent x²?
Ben Syversen · 340K views

Why CPU Time ≠ Wall Clock Time! - Computerphile
Computerphile · 151K views

Machine Code Explained - Computerphile
Computerphile · 188K views

Optimising Code - Computerphile
Computerphile · 187K views

Rory Sutherland - Alchemy: The Surprising Power of Ideas That Don't Make Sense
The Welcome Conference · 877K views