LWN: Comments on "CXL 1: Management and tiering" https://lwn.net/Articles/894598/ This is a special feed containing comments posted to the individual LWN article titled "CXL 1: Management and tiering". en-us Wed, 24 Sep 2025 02:54:46 +0000 Wed, 24 Sep 2025 02:54:46 +0000 https://www.rssboard.org/rss-specification lwn@lwn.net CXL 1: Management and tiering https://lwn.net/Articles/895479/ https://lwn.net/Articles/895479/ sdalley <div class="FormattedComment"> Personally, I&#x27;m more than happy to trade a little more memory for a little more sanity.<br> <p> And message passing needn&#x27;t consume more memory if the message buffer simply changes hands between owners rather than being copied. A good interface to such a message interface can also ensure, under the hood, that references to buffers no longer owned are always NULLed.<br> </div> Tue, 17 May 2022 08:27:19 +0000 CXL 1: Management and tiering https://lwn.net/Articles/895404/ https://lwn.net/Articles/895404/ ballombe <div class="FormattedComment"> <font class="QuotedText">&gt; Message passing requires an extra programming effort but unlike shared memory, performance and correctness issues can be traced and debugged in a reasonable amount of time.</font><br> <p> But message passing often requires more total memory for the same task.<br> And often the performance issue is traced to &quot;not enough memory by node&quot;.<br> So...<br> </div> Mon, 16 May 2022 16:30:16 +0000 CXL 1: Management and tiering https://lwn.net/Articles/895324/ https://lwn.net/Articles/895324/ willy <div class="FormattedComment"> Oh yes, the CXL boosters have a future where everything becomes magically cheap. I don&#x27;t believe that world will come to pass. I think the future of HPC will remain as one-two socket CPU boxes with one-two GPUs, much more closely connected over CXL, but the scale-out interconnect isn&#x27;t going away, and I doubt the scale-out interconnect will be CXL. Maybe it will; I&#x27;ve been wrong before.<br> <p> I have no faith in disaggregated systems. You want your memory close to your [CG]PU. If you upgrade your [CG]PU, you normally want to upgrade your interconnect and memory at the same time. The only way this makes sense is if we&#x27;ve actually hit a limit in bandwidth and latency, and that doesn&#x27;t seem to have happened yet, despite the sluggish adoption of PCIe4.<br> <p> The people who claim &quot;oh you want a big pool of memory on the fabric behind a switch connected to lots of front end systems&quot; have simply not thought about the reality of firmware updates on the switch or the memory controller. How do you schedule downtime for the N customers using the [CG]PUs? Tuesday Mornings 7-9am Are Network Maintenance Windows just aren&#x27;t a thing any more.<br> </div> Sun, 15 May 2022 21:58:40 +0000 CXL 1: Management and tiering https://lwn.net/Articles/895315/ https://lwn.net/Articles/895315/ Paf <div class="FormattedComment"> This makes more sense - it’s mostly a way to make the clean cases easier and well supported by hardware.<br> <p> Looking it up, I’m seeing a lot of stuff about disaggregated systems which just seems crazy. But marketing doesn’t have to match reality of intent for the main implementers.<br> </div> Sun, 15 May 2022 19:46:09 +0000 CXL 1: Management and tiering https://lwn.net/Articles/895296/ https://lwn.net/Articles/895296/ marcH <div class="FormattedComment"> <font class="QuotedText">&gt; instead of getting surprised when memory access is magically slow.</font><br> <p> Well, it&#x27;s not like single-thread performance is deterministic either. However I agree shared memory is really crossing a line, it&#x27;s the biggest programming footgun ever invented by hardware engineers.<br> <p> Message passing requires an extra programming effort but unlike shared memory, performance and correctness issues can be traced and debugged in a reasonable amount of time.<br> <p> <a href="https://queue.acm.org/detail.cfm?id=3212479">https://queue.acm.org/detail.cfm?id=3212479</a><br> <p> <font class="QuotedText">&gt; Caches are large, but their size isn&#x27;t the only reason for their complexity. The cache coherency protocol is one of the hardest parts of a modern CPU to make both fast and correct. Most of the complexity involved comes from supporting a language in which data is expected to be both shared and mutable as a matter of course.</font><br> <p> <p> </div> Sun, 15 May 2022 03:17:23 +0000 CXL 1: Management and tiering https://lwn.net/Articles/895284/ https://lwn.net/Articles/895284/ willy <div class="FormattedComment"> I don&#x27;t think we&#x27;re going to see 2048-node clusters built on top of CXL. The physics just doesn&#x27;t support it.<br> <p> The use cases I&#x27;m seeing are:<br> <p> - Memory-only devices. Sharing (and cache coherency) is handled by the CPUs that access them. Basically CXL as a replacement for the DDR bus.<br> <p> - GPU/similar devices. They can access memory coherently, but if you have any kind of contention between the CPU and the GPU, performance will tank. Programs are generally written to operate in phases of GPU-only and CPU-only access, but want migration handled for them.<br> <p> Maybe there are other uses, but there&#x27;s no getting around physics.<br> </div> Sat, 14 May 2022 20:16:18 +0000 CXL 1: Management and tiering https://lwn.net/Articles/895279/ https://lwn.net/Articles/895279/ Paf <div class="FormattedComment"> As someone who’s worked in HPC and watched the shared memory machines be displaced by true clustered systems, despite the intense and remarkable engineering that went in to keeping those shared memory machines coherent at scale … yeah.<br> <p> So this is the thing we’re doing again this week.<br> <p> That doesn’t mean it’s not worth it - those machines made a lot of sense for a while and shifting trends may make that true again - but the costs of coherency across links like these is *intense*. I wonder where and how much use this will see, what cases it will be fast enough for, etc.<br> </div> Sat, 14 May 2022 16:01:42 +0000 CXL 1: Management and tiering https://lwn.net/Articles/895225/ https://lwn.net/Articles/895225/ MattBBaker <div class="FormattedComment"> Will there be an option to bypass the kernel and program the memory directly? It&#x27;s nice when the kernel and hide the details, but for some applications it&#x27;s really better if it&#x27;s aware of the different tiers of memory access and can explicitly pass messages instead of getting surprised when memory access is magically slow.<br> </div> Fri, 13 May 2022 20:37:35 +0000