Ilmu Komputer & AI editorial
Cnuas: A Software-Defined AI/HPC Rack-scale Emulation Platform and Hyperscale Data Center Facility Twin
The core problem
Innovation
The paper presents bounded prototype results for the core platform and its extensions. The prototype demonstrates the feasibility of functional emulation for rack-scale AI/HPC infrastructure on commodity hosts. Key results include:
- Successful implementation of CnuasNIC as a guest-visible RDMA adapter, enabling RDMA-based communication in emulated environments.
- CnuasSwitch supporting both RoCEv2 and native InfiniBand, providing a hybrid software switch that can emulate network fabrics.
- A dedicated AI/ML accelerator (GPU) peer fabric that allows study of accelerator interactions, though the accelerator software stack remains an early research prototype.
- OpenBMC-based rack management with executable power supply and battery backup firmware over RS-485, demonstrating management controller emulation.
- A web-based user interface that visualizes racks, devices, and interconnections, aiding in system-level mental model construction.
The results are bounded in the sense that they focus on functional correctness and interface compatibility rather than performance matching. The platform is intended for experimentation, learning, and software development, not for replacing physical
Why it matters
The Cnuas platform addresses a critical gap in AI/HPC software development: the need for accessible, flexible infrastructure for experimentation. By providing functional emulation of rack-scale components, it lowers the barrier to entry for researchers and developers who lack access to scarce, costly hardware. The use of OCP Open Rack v3 specifications ensures that the emulation aligns with industry standards, making it relevant for real-world deployments.
The hybrid software switch supporting both RoCEv2 and native InfiniBand is a notable contribution, as it allows developers to experiment with different network protocols without hardware. The guest-visible RDMA adapter (CnuasNIC) enables RDMA semantics to be studied in software, which is essential for developing high-performance communication libraries. The GPU peer fabric, while an early prototype, opens avenues for studying accelerator interactions and programming models.
OpenBMC-based rack management with executable firmware over RS-485 provides a realistic management interface, allowing developers to test management software and firmware interactions. The web-based UI enhances the developer experience by visualizing complex interconnections, which can be crucial for understanding system-level dependencies.
However, the platform has limitations. It does not aim to match performance characteristics, so it is not suitable for performance benchmarking or latency-sensitive studies. The accelerator software stack is immature, and facility modeling with OpenUSD is exploratory. These limitations suggest that Cnuas is best suited for functional prototyping, education, and early-stage development.
The paper positions Cnuas as a basis for community collaboration. By open-sourcing the platform, the authors invite contributions to extend its capabilities, improve fidelity, and integrate with other tools. This collaborative approach could accelerate innovation in AI/HPC software development by providing a shared, accessible testbed.
In the broader context, Cnuas aligns with trends in software-defined infrastructure and digital twins. The concept of a "facility twin" using OpenUSD hints at future integration with digital twin technologies for data center design and operations. While still exploratory, this direction could lead to more comprehensive emulation environments that cover not only IT equipment but also power, cooling, and physical layout.
Overall, Cnuas represents a valuable contribution to the AI/HPC community, offering a flexible, open-source platform for rack-scale emulation. Its focus on functional emulation and community collaboration makes it a promising tool for research, education, and early-stage development.
Who should read this
Opening member content…