NVIDIA/aerial-cuda-accelerated-ran

An SDK (Software Development Kit) for building commercial-grade, AI-native, 3GPP, and O-RAN compliant 5G/6G gNB software on NVIDIA-accelerated computing platforms.

NVIDIA Aerial™ CUDA‑Accelerated RAN

What it is – An open‑source SDK that moves the heavy‑lifting of a 5G radio access network (RAN) onto NVIDIA GPUs. It provides CUDA‑based implementations of the physical (L1) and MAC (L2) layers, plus Python bindings so researchers can plug the stack into AI/ML frameworks.

Why it matters – 5G and future 6G systems need massive compute for tasks such as LDPC/Polar channel coding, massive‑MIMO beamforming, and real‑time scheduling. By off‑loading these to GPUs, the SDK enables:

  • Faster simulation of realistic 5G waveforms.
  • Rapid prototyping of AI‑enhanced scheduling or channel‑estimation algorithms.
  • Scalable, container‑based deployment for research clusters or edge servers.

Key components

Component Role Highlights
cuPHY CUDA‑accelerated PHY (L1) LDPC & Polar coding, modulation/demodulation, MIMO processing, channel estimation—all running on the GPU.
cuMAC CUDA‑accelerated MAC (L2) High‑throughput scheduler for resource allocation and timing.
pyAerial Python API Exposes cuPHY/cuMAC to Python, making it easy to call from TensorFlow, PyTorch, or the Sionna telecom‑ML library.
5GModel Reference waveform generator MATLAB‑based scripts that produce test vectors and verify the GPU kernels against 3GPP specs.
Container environment Docker images on NVIDIA NGC Pre‑built containers with all dependencies, ready for immediate use.

Repository layout (high‑level)

  • cuPHY/ – GPU kernels for the physical layer.
  • cuMAC/ – GPU kernels for the MAC scheduler.
  • pyaerial/ – Python bindings and helper ML utilities.
  • 5GModel/ – Test‑vector generation and verification tools.
  • testBenches/ – Scripts for performance measurement and correctness testing.
  • cuPHY-CP/ – Control‑plane glue (fronthaul driver, RU emulator, etc.) and container build scripts.

Getting started (quick‑start)

# Clone with submodules
git clone --recurse-submodules https://github.com/NVIDIA/aerial-cuda-accelerated-ran.git
cd aerial-cuda-accelerated-ran

# Install Git‑LFS and pull large files
sudo apt install git-lfs && git lfs pull

# Launch the development container (includes CUDA, drivers, and all libs)
./cuPHY-CP/container/run_aerial.sh

# Inside the container, build the SDK
./testBenches/phase4_test_scripts/build_aerial_sdk.sh

The container images are also available on NVIDIA NGC for CI/CD pipelines.

Typical use cases

  1. Research – Evaluate new AI‑driven channel‑estimation or scheduling algorithms by swapping in custom Python code via pyAerial while keeping the high‑performance GPU kernels.
  2. Simulation – Generate large‑scale 5G NR traffic traces with realistic PHY behavior for network‑level studies.
  3. Prototype deployments – Run a full‑stack RAN on a GPU‑enabled server for edge‑computing demos or early‑stage 6G testbeds.

Support & contribution

  • The project is maintained by NVIDIA. Issues can be filed on GitHub; security reports go through the private disclosure process described in SECURITY.md.
  • Contributions are not accepted at this time (the repo is read‑only for external developers).

License – Apache License 2.0 (see LICENSE). Some third‑party components have their own licenses (listed in ATTRIBUTION.rst).

Citation – If you publish work that uses this SDK, cite the provided BibTeX entry.


All information above is taken directly from the repository’s README; no additional features have been inferred.

Related

  • Project
  • Project
  • Project
  • Project
  • Project