Papers
Topics
Authors
Recent
Detailed Answer
Quick Answer
Concise responses based on abstracts only
Detailed Answer
Well-researched responses based on abstracts and relevant paper content.
Custom Instructions Pro
Preferences or requirements that you'd like Emergent Mind to consider when generating responses
Gemini 2.5 Flash
Gemini 2.5 Flash 43 tok/s
Gemini 2.5 Pro 49 tok/s Pro
GPT-5 Medium 18 tok/s Pro
GPT-5 High 16 tok/s Pro
GPT-4o 95 tok/s Pro
Kimi K2 198 tok/s Pro
GPT OSS 120B 464 tok/s Pro
Claude Sonnet 4 37 tok/s Pro
2000 character limit reached

emucxl: an emulation framework for CXL-based disaggregated memory applications (2404.08311v1)

Published 12 Apr 2024 in cs.DC

Abstract: The emergence of CXL (Compute Express Link) promises to transform the status of interconnects between host and devices and in turn impact the design of all software layers. With its low overhead, low latency, and memory coherency capabilities, CXL has the potential to improve the performance of existing devices while making viable new operational use cases (e.g., disaggregated memory pools, cache coherent memory across devices etc.). The focus of this work is design of applications and middleware with use of CXL for supporting disaggregated memory. A vital building block for solutions in this space is the availability of a standard CXL hardware and software platform. Currently, CXL devices are not commercially available, and researchers often rely on custom-built hardware or emulation techniques and/or use customized software interfaces and abstractions. These techniques do not provide a standard usage model and abstraction layer for CXL usage, and developers and researchers have to reinvent the CXL setup to design and test their solutions, our work aims to provide a standardized view of the CXL emulation platform and the software interfaces and abstractions for disaggregated memory. This standardization is designed and implemented as a user space library, emucxl and is available as a virtual appliance. The library provides a user space API and is coupled with a NUMA-based CXL emulation backend. Further, we demonstrate usage of the standardized API for different use cases relying on disaggregated memory and show that generalized functionality can be built using the open source emucxl library.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (22)
  1. Compute Express Link. 2019. Retrieved July 17, 2023 from https://www.computeexpresslink.org/.
  2. Compute Express Link Consortium. 2019. Retrieved July 17, 2023 from https://www.computeexpresslink.org/members.
  3. O. Mutlu, “Main memory scaling: Challenges and solution directions,” More than Moore Technologies for Next Generation Computer Design, pp. 127–153, 2015.
  4. J. Bonwick. The Slab Allocator: An Object-Caching Kernel. USENIX Summer 1994 Technical Conference (USENIX Summer 1994 Technical Conference). (1994,6)
  5. Samsung Unveils Industry-First Memory Module Incorporating New CXL Interconnect Standard. 2021. Retrieved July 17, 2023 from https://bit.ly/3uBo27J.
  6. Samsung Develops Industry’s First CXL DRAM Supporting CXL 2.0. 2023. Retrieved July 17, 2023 from https://bit.ly/3nRc7o0.
  7. Linux PMEM and CXL tools. Retrieved July 17, 2023 from https://pmem.io/ndctl/libcxl/libcxl.
  8. Coherent Accelerator Processor Interface (CAPI) Library. Retrieved July 17, 2023 from https://github.com/ibm-capi/libcxl
  9. Redis. Retrieved July 17, 2023 from https://redis.io/.
  10. RocksDB. Retrieved July 17, 2023 from https://rocksdb.org/.
  11. CXL 1.1 Specification. 2020. Retrieved July 17, 2023 from https://www.computeexpresslink.org/post/compute-express-link-1-1-specification-now-available-to-members.
  12. CXL 2.0 Specification. 2020. Retrieved July 17, 2023 from https://www.computeexpresslink.org/post/compute-express-link-2-0-specification-now-available.
  13. CXL 3.0 Specification. 2022. Retrieved July 17, 2023 from https://www.computeexpresslink.org/download-the-specification.
  14. Scalable Memory Development Kit (SMDK). 2021. Retrieved July 17, 2023 from https://github.com/OpenMPDK/SMDK.
  15. Steve Scargall. ”How To Emulate CXL Devices using KVM and QEMU”. 2022. Retrieved July 17, 2023 from https://stevescargall.com/blog/2022/01/20/how-to-emulate-cxl-devices-using-kvm-and-qemu/.
  16. R. Wang, J. Wang, S. Idreos, M. T. Özsu, and W. G. Aref, “The case for distributed shared-memory databases with RDMA-enabled memory disaggregation,” Proceedings of the VLDB Endowment, vol. 16, no. 1, pp. 15–22, 2022.
  17. P. Grun, “Introduction to infiniband for end users,” White paper, InfiniBand Trade Association, 2010.
  18. Compute Express Link Memory Devices. Retrieved July 17, 2023 from https://www.kernel.org/doc/html/latest/driver-api/cxl/memory-devices.html
  19. Memory Viewer for CXL. 2023. Retrieved July 17, 2023 from https://memverge.com/memoryviewer/.
  20. Linux memory mapping. Retrieved July 17, 2023 from https://linux-kernel-labs.github.io/refs/pull/190/merge/labs/memory_mapping.html.
  21. A look into the CXL device ecosystem and the evolution of CXL use cases. January-2023. Retrieved July 17, 2023 from https://www.computeexpresslink.org/resource-library.
  22. Astera Labs. Leo CXL Memory Connectivity Platform. Retrieved July 17, 2023 from https://www.asteralabs.com/products/cxl-memory-platform/leo-cxl-memory-connectivity-platform/.
Citations (1)
List To Do Tasks Checklist Streamline Icon: https://streamlinehq.com

Collections

Sign up for free to add this paper to one or more collections.

Summary

We haven't generated a summary for this paper yet.

Dice Question Streamline Icon: https://streamlinehq.com

Follow-Up Questions

We haven't generated follow-up questions for this paper yet.

X Twitter Logo Streamline Icon: https://streamlinehq.com