在异构系统中,Fork就是你所需的全部
Fork is All You Need in Heterogeneous Systems
AI总结:
针对异构系统编程复杂度高的问题,提出基于CXL的统一编程运行时系统CodeFlow,支持高级语言编译后自动调度到加速器,降低开发成本并提升性能。
摘要:
我们提出了一种面向异构计算系统的统一编程模型。这类系统集成了多种计算加速器和存储单元,能够提供比以CPU为中心的系统更高的性能。尽管异构系统已被机器学习等现代工作负载采用,但编程仍然是一个关键的限制因素。传统的异构编程技术要么需要对代码库进行大量修改,要么要求用不同的语言重写程序。这种编程复杂性源于计算和数据交换缺乏统一的抽象层,这迫使每种编程模型都要定义自己的抽象。然而,随着Compute Express Link(计算高速链路,CXL)等新兴的缓存一致性互连技术的出现,我们看到了将这种架构异构性标准化并提供统一编程模型的机会。我们提出了CodeFlow,一种面向异构计算的语言运行时系统。CodeFlow在编程语言运行时中对架构计算进行抽象,并利用CXL作为统一的数据交换协议。用C++和Rust等高级语言编写的工作负载可以被编译到CodeFlow,它会将工作负载的不同部分调度到合适的加速器上,无需开发人员为特定加速器实现代码或调用API。CodeFlow减少了程序员利用异构系统的工作量,并提升了工作负载性能。
英文摘要:
We present a unified programming model for heterogeneous computing systems. Such systems integrate multiple computing accelerators and memory units to deliver higher performance than CPU-centric systems. Although heterogeneous systems have been adopted by modern workloads such as machine learning, programming remains a critical limiting factor. Conventional heterogeneous programming techniques either impose heavy modifications to the code base or require rewriting the program in a different language. Such programming complexity stems from the lack of a unified abstraction layer for computing and data exchange, which forces each programming model to define its abstractions. However, with the emerging cache-coherent interconnections such as Compute Express Link, we see an opportunity to standardize such architecture heterogeneity and provide a unified programming model. We present CodeFlow, a language runtime system for heterogeneous computing. CodeFlow abstracts architecture computation in programming language runtime and utilizes CXL as a unified data exchange protocol. Workloads written in high-level languages such as C++ and Rust can be compiled to CodeFlow, which schedules different parts of the workload to suitable accelerators without requiring the developer to implement code or call APIs for specific accelerators. CodeFlow reduces programmers' effort in utilizing heterogeneous systems and improves workload performance.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。