• enumerator4829@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    4
    ·
    10 months ago

    All your RAM needs to be the same speed unless you want to open up a rabbit hole. All attempts at that thus far have kinda flopped. You can make very good use of such systems, but I’ve only seen it succeed with software specifically tailored for that use case (say databases or simulations).

    The way I see it, RAM in the future will be on package and non-expandable. CXL might get some traction, but naah.

    • God's hairiest twink@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      3
      ·
      10 months ago

      Couldn’t you just treat the socketed ram like another layer of memory effectively meaning that L1-3 are on the CPU “L4” would be soldered RAM and then L5 would be extra socketed RAM? Alternatively couldn’t you just treat it like really fast swap?

      • enumerator4829@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        1
        ·
        10 months ago

        Wrote a longer reply to someone else, but briefly, yes, you are correct. Kinda.

        Caches won’t help with bandwidth-bound compute (read: ”AI”) it the streamed dataset is significantly larger than the cache. A cache will only speed up repeated access to a limited set of data.

    • barsoap@lemm.ee
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      10 months ago

      The cache hierarchy has flopped? People aren’t using swap?

      NUMA also hasn’t flopped, it’s just that most systems aren’t multi socket, or clusters. Different memory speeds connected to the same CPU is not ideal and you don’t build a system like that but among upgraded systems that’s not rare at all and software-wise worst thing that’ll happen is you get the lower memory speed. Which you’d get anyway if you only had socketed RAM.

      • Jyek@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        0
        ·
        10 months ago

        In systems where memory speed are mismatched, the system runs at the slowest module’s speed. So literally making the soldered, faster memory slower. Why even have soldered memory at that point?

        • barsoap@lemm.ee
          link
          fedilink
          English
          arrow-up
          1
          arrow-down
          1
          ·
          10 months ago

          I’d assume the soldered memory to have a dedicated memory controller. There’s also no hard requirement that a single controller can’t drive different channels at different speeds. The only hard requirement is that one channel needs to run at one speed.

          …and the whole thing becomes completely irrelevant when we’re talking about PCIe expansion cards the memory controller doesn’t care.