4 ms·
That doesn't match my intuition about CXL memory. It's latency AFAIK is more similar to accessing NUMA memory on another socket (and applications are OK with b
by riehwvfbk 3y ago
That doesn't match my intuition about CXL memory. It's latency AFAIK is more similar to accessing NUMA memory on another socket (and applications are OK with blocking on that) than an SSD. So quite a bit faster.
Actual measurements seem to support this: https://arxiv.org/pdf/2303.15375.pdf https://arxiv.org/pdf/2303.15375.pdf (see Figure 3)
- hedora 3y agoThe devices they simulated aren’t disaggregated. They measured accessing a device that’s a single PCIe hop away from the CPU. They don’t provide absolute numbers, so it’s hard to compare with other technologies, but note that you can (in theory; and in prototypes) dispatch and complete multiple NVMe I/Os per cache miss, thanks to amortization. CXL is blocking the CPU for the equivalent of multiple cache misses per I/O.
- riehwvfbk 3y agoI thought the paper wasn't a simulation? They refer to the CXL memories as "hard IP" and "soft IP", so two ASICs and and FPGA. You could also imagine a DMA engine within the CXL ASIC to assist with paging things in and out of main memory in an asynchronous fashion.
- stefanha 3y agoThe numbers I have seen are CXL latency around 250 ns while NVMe latency is 5-10 us (Intel Octane DC series for local flash). You mention amortization for NVMe, but when operating at high queue depths the per-request latency is larger than at low queue depths. Fast local NVMe drives aren't an alternative to disaggregated memory. There is no fabric with local NVMe drives. It would be necessary to compare against NVMe over Fabrics, which is quite a bit slower (look at flash SAN appliance datasheets, probably around 100 us latency). Both the comparison itself and the numbers you mentioned are not what I expected. Can you elaborate and share links to numbers?