NVIDIA Aerial cuPHY is a cloud-native, software-defined platform optimized to run 5G/6G-compatible gNB physical layer (L1/PHY) workloads on NVIDIA DPU/NIC and GPU hardware. See link for more details.
Hi,
I was trying to run this on my local system. Please note that I do not have an nVIDIA GPU.
I am running Ubuntu on windows subsystem for linux.
When I tried to build the cuPHY, I am getting the below error
cmake …/ --toolchain …/cmake/toolchains/native
It is throwing the below error:
CMake Error at /usr/share/cmake-3.30/Modules/Internal/CMakeCUDAFindToolkit.cmake:104 (message):
Failed to find nvcc.Compiler requires the CUDA toolkit. Please set the CUDAToolkit_ROOT
variable.
Call Stack (most recent call first):
/usr/share/cmake-3.30/Modules/CMakeDetermineCUDACompiler.cmake:85 (cmake_cuda_find_toolkit)
CMakeLists.txt:118 (project)
I am not sure installing the cuda compiler should be enough for my barrier or I am completely on a wrong boat.
Hi @hdutta ,
Welcome to the Aerial Forum!
You can build the code when you have the required tools, e.g. CUDA compiler, even NVIDIA GPU is not installed on your system. These tools are included in the container provided with each release.
However, you still need the GPU to be able to run the cuPHY.
Please review the instructions on section cuBB Quick Start Guide/Running Aerial cuPHY in Aerial CUDA Accelerated RAN release documentation.
Thanks.
Hello @hdutta ,
I want to enhance the QAM algorithm of Layer1 for research & development purpose. Also, I would like to apply some of the DOCSIS Layer1 algos in GPU. I tred to browse cuPhy code and could not locate QAM related code. I hope, cuPhy is written in C++ which is executed in GPU. Can you please tell me the file which has QAM implementation? Is the Layer1 code(cuPhy) written fully in C++?
Hi @siddhartha.a.bhakta ,
Can you please initiate a new thread since your question is not related to the initial inquiry on this thread?
All signal processing functions of L1 are implemented in CUDA.
Please see the following function in cuPHY/src/cuphy/channel_eq/channel_eq.cu for the QAM soft-demapper.
////////////////////////////////////////////////////////////////////////
// ch_eq_simplified_soft_demapper()
template <typename TStorageOut,
typename TCompute>
__device__ void ch_eq_simplified_soft_demapper(const int PER_LAYER_THRD_IDX,
int32_t nPamBits,
TCompute noiseInv,
const typename complex_from_scalar<TCompute>::type& softEst,
TStorageOut* llr)
This function is called by eqMmseSoftDemapKernel_v4 .
Thank you.
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.