https://xkcd.com/908/

Alt text

There’s planned downtime every night when we turn on the Roomba and it runs over the cord.

    • GlitchyDigiBun@lemmy.world
      link
      fedilink
      English
      arrow-up
      13
      ·
      edit-2
      20 hours ago

      Caching is like accruing debt for CPU time between network connected devices. Let’s suppose the following:

      Computer X is talking to computer Y with a 32mb cache on each side. They both need to be involved in the following math that’s about to take place. Computer X is doing the math, and Y is supplying the data, but also manipulating the return data for some data it will send in the future.

      This is all well and good if this a 2-endpoint network. Computer Y will be ready for X’s data at any time. However, the internet is not 2 endpoints, and both X and Y are talking to a bunch more computers about totally unrelated computationally networked tasks. So now Computer X can’t send data to Y or vice versa because they’re busy. X doesn’t have anything to do so it works on the next problem it has lined up for Y and critically, adds this data to a cache marked “for Y, do not delete.”

      And now you might see how “caching” a varitable niagara falls of data (cloud compute requirements) to the wider world would get rather bloated, literally running up computational debt until storage is exceeded.

      EDIT: To nail home the debt analogy, this debt also accrues interest in the form of the CPU cycles needed to manipulate data within the cache, including both retrieving and storing that data, although this often happens with any networking whatsoever so it’s only measurable in a case where the cache is so bloated.