Building software gives you the warm and fuzzy illusion of total control; this is the result of layers upon layers of successful abstractions hiding immense complexity. But when they inevitably leak, that’s when knowing what’s under the hood pays off.
In this talk we’ll peel a few layers and take at our “car engine”, the CPU. All applications, even in high-level Scala, end up executing machine code instructions on a processor; that is why the JVM has a memory model, why memory layout still matters at scale, and we’ll show why you’re usually free to ignore these and go about your job.
voted / votable