|
|
|
|
|
by imtringued
714 days ago
|
|
>And it made it complex to figure out how to use those DIMMs, those parts of memory that would be slower but persistent. Using the DIMMs was hard. CXL changes the game due to its cache coherency protocol. You don't have to care, precisely because the system transparently deals with this directly in the hardware. It is just one giant address space. You don't need slow OS level page faults or to update the page table every time something is loaded or unloaded from memory. The biggest problem with persistent memory is building an application with transactional semantics. All the hardware and software transactional memory is built around concurrency and not persistence. When you think about it, that is kind of backwards. Persistent memory has very loose performance requirements since I/O is assumed to be slow. Meanwhile parallelism and concurrency are about increasing performance and therefore it defeats the point if it ends up slower than without. |
|