Coffee and the L2 Cache


My wife gave me a coffee grinder for my birthday. I’ve come a long way from instant coffee; I’ve now got the whole coffee pipeline: from whole beans, through the grinder, through the coffee maker, into the coffee pot, and into my mug.


Anyway, thinking about how the caffeine flows through all the different stages to get to me, it got me thinking about how data flows through the different parts of a computer to get to the registers.  Here’s what I see:



















Coffee… Data…
in the mug in registers
brewed in the coffee pot, waiting to be poured into the mug in the L2 Cache
coffee grinds, waiting to be brewed in physical memory
not-yet-ground coffee beans, sitting on the shelf In the pagefile on disk


Coffee-connoisseurs (or hardware folks), am I missing any rows?

Comments (6)

  1. Coffee in gut = data currently being processed by CPU

    Coffee being expelled = data being written back to disk?

    Geez, now I won’t be able to drink coffee without pondering how I can optimize the process . . .

  2. Peter Ritchie says:

    I’ve optimized the use of "physical memory" right out, I use a coffee maker that grinds the beans when it brews. 🙂

  3. Sam Gentile says:

    WCF/SOA

    Two geat posts by the Hosting man in Indigo, Steve Maines, on the ServiceHostFactory API,…

  4. Luke Harris says:

    not-yet-ground coffee beans, sitting on the shelf? More like a coffee bean just planted in the soil!

  5. BarfieldMV says:

    You forgot to split the coffee from Cafeine (the interesting part) and the carrier (water).

    Data in the register

    Operations on the data floating in between the data.

    Something about the creating the coffee beans (programming) and the coffee machine etc.

  6. Anonymous says:

    Where does a latte fit into all of this 🙂