当前位置: X-MOL 学术arXiv.cs.DC › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
emucxl: an emulation framework for CXL-based disaggregated memory applications
arXiv - CS - Distributed, Parallel, and Cluster Computing Pub Date : 2024-04-12 , DOI: arxiv-2404.08311
Raja Gond, Purushottam Kulkarni

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.

中文翻译:

emucxl:基于 CXL 的分解内存应用程序的模拟框架

CXL(Compute Express Link)的出现有望改变主机和设备之间的互连状态,进而影响所有软件层的设计。凭借其低开销、低延迟和内存一致性功能,CXL 有潜力提高现有设备的性能,同时实现可行的新操作用例(例如,分解内存池、跨设备的缓存一致性内存等)。这项工作的重点是使用 CXL 设计应用程序和中间件来支持分解内存。该领域解决方案的一个重要组成部分是标准 CXL 硬件和软件平台的可用性。目前,CXL 设备尚未商用,研究人员通常依赖定制硬件或仿真技术和/或使用定制软件接口和抽象。这些技术没有为 CXL 使用提供标准使用模型和抽象层,开发人员和研究人员必须重新设计 CXL 设置来设计和测试他们的解决方案,我们的工作旨在提供 CXL 仿真平台和软件接口的标准化视图以及分类内存的抽象。该标准化被设计和实现为用户空间库 emucxl,并可作为虚拟设备使用。该库提供用户空间 API 并与基于 NUMA 的 CXL 仿真后端相结合。此外,我们还演示了标准化 API 在依赖于分解内存的不同用例中的使用,并表明可以使用开源 emucxl 库构建通用功能。
更新日期:2024-04-15
down
wechat
bug