Show cover of TLB Hit 💥

TLB Hit 💥

A podcast about systems & compilers by @jfbastien and @cdleary.


The show producer has not yet provided a description for this episode.
41:40 2/23/23
Episode 4: t-r-a-c-/e̅‾\-o-m-p-i-l-e
Monitor. Compile. Bail. Repeat!
37:48 5/6/22
Episode 3: __builtin_expect(!!(x), 0)
* What is it we know statically? * What's effectively discoverable only at runtime? * How do we tell "the machine" (compiler and/or hardware): * Things we *know* to be true... * Things we *expect* to be true... * Things we *expect* to be true but *want to do something about* when it's not... * Things we have no idea about! * How do we collect that information that we have no idea about? * What happens if we're wrong? What if the workload is inherently irregular? * In the limit, random noise could drive our control decisions! * We talked a bit about precise vs imprecise exceptions before and automatic reordering, and we've mentioned vector machines and auto-vectorization. * All falls into the broader theme here, but we're always questioning what we can actually cover in an hour... * We'll try to give it a go for a subset of these things! * Time is often the limiting factor. * The episode title is the thing that we often macro define as `#define UNLIKELY` * In C/C++ code you might say "this control condition is unlikely", and say `if (UNLIKELY(condition))` * In C++20 there was added these `[[likely]]` and `[[unlikely]]` annotations that do the same thing, but with more square brackets, so clearly better!
39:10 4/19/21
Episode 2:^M
What happens when you type in your browser's address bar, and press enter?
56:35 2/21/21
Episode 1: *(char*)0 = 0
The adventure of storing NUL to NULL!
43:52 11/23/20
Episode 0: mov fp, sp
The stack, and how it relates to TLB Hits.
64:28 11/2/20