The 4th dimension. And I’m not even kidding! 🛸
Compression is a form of space-time trade off. The compressed data is encoded as a set of instructions on how to get the original data back. Following those instructions takes time, thus where the 8GB went.
RAM exists as a 1-dimensional space. For programming…that’s kind of irritating.
All the important math happens in 2D arrays.
It’s simple(ish) to compress a higher level space into a single dimension (most languages today are row-major), but there’s a funny quirk.
At the *physical* DRAM layer, the actual bits *are* stored in a 2D array, rows and columns. (…well, when you add up all the layers, it’s more like a hierarchy of 2D arrays, but you get my point).
If this information was directly exposed to you…gosh there are all sorts of neat tricks you can get away with!
Unfortunately, keeping memory addresses in a 1-D space makes things much simpler from the OS perspective for memory management, not to mention code portability. There are nasty security problems too...certainly some valid reasons for keeping physical structure hidden.
Yet, think of how much of performance engineering / memory locality work could be shortcutted if it were trivial to understand the exact physical layout of how your arrays were stored!
🟢 Gabe Newell respondió a la demanda antimonopolio de $900M contra Steam:
"Los clientes tienen una enorme cantidad de opciones. Pueden decidir dónde comprar sus productos, si compran el juego en Xbox, en Steam, en Epic Games Store o directamente a los desarrolladores".
Valve declaró en sus presentaciones judiciales que el éxito de Steam por sobre sus competidores se debe gracias a sus innovaciones constantes en la plataforma que benefician tanto a jugadores como a desarrolladores.