cuMAC Features#

  • Reference scheduling algorithms - Includes clean, well-documented CUDA implementations of:

    • Proportional-fairness (PF)-based UE selection algorithms.

    • PF-based UE/logical channel sorting per QoS type.

    • PF-based PRB allocation algorithms.

    • ILLA + OLLA based link adaptation.

    • Link adaptation based on deep reinforcement learning (DRL).

    • MU-MIMO user grouping/pairing for 64T64R.

    • DL beamforming weights computation (zero-forcing).

  • Real-time performance - The CUDA implementations of cuMAC algorithms are designed to meet the real-time performance requirements for the L2 stack.

  • Interfacing between L2 stack and GPU - cuMAC-CP serves as the real-time interface for offloading MAC scheduling functions to the GPU.

  • Joint scheduling across multiple cells - The CUDA implementations are designed for the joint scheduling across multiple cells within a coordinated cell group.

  • Modular design - Built as a library of modular scheduling algorithms that can be integrated into existing L2 stacks, simulators, or custom testbeds to offload individual MAC scheduling functions to the GPU.

  • Benchmarking suite - Includes tools to profile, test, and compare the performance of CUDA algorithm implementations against CPU-based equivalents.

  • Extensible framework - Provides a C++/CUDA framework and API for researchers and engineers to implement and test their own novel MAC scheduling algorithms on the GPU.