Aerial cuBB 26.1: F08 1C Pattern 59 launch pattern references four missing ULMIX FAPI H5 files

Hi NVIDIA Aerial team,

I am working with NVIDIA Aerial CUDA-Accelerated RAN cuBB 26.1 and trying to run an end-to-end cuBB test using the F08 1-cell Pattern 59 launch pattern.

Environment:

  • Aerial version: 26.1
  • Image: nvcr.io/nvidia/aerial/aerial-cuda-accelerated-ran:26-1-cubb
  • Test vector generation host: x86_64 server with NVIDIA A100-PCIE-40GB
  • Target E2E host: DGX Spark / ARM64
  • Test objective: run a basic F08 1-cell 4T4R E2E test, initially using Pattern 59 if possible
  • Main launch pattern file:
    /home/aiserver/aerial-cuda-accelerated-ran/5GModel/nr_matlab/test/GPU_test_input/launch_pattern_F08_1C_59.yaml

Issue:

The Pattern 59 launch pattern references 24 FAPI H5 files. I checked the referenced files one by one. 20 DLMIX FAPI files are present, but the following 4 ULMIX FAPI files are missing:

  • TVnr_ULMIX_3040_gNB_FAPI_s0.h5
  • TVnr_ULMIX_3060_gNB_FAPI_s0.h5
  • TVnr_ULMIX_3080_gNB_FAPI_s0.h5
  • TVnr_ULMIX_3100_gNB_FAPI_s0.h5

I also found similarly numbered generic files:

  • TVnr_3040_gNB_FAPI_s0.h5
  • TVnr_3060_gNB_FAPI_s0.h5
  • TVnr_3080_gNB_FAPI_s0.h5
  • TVnr_3100_gNB_FAPI_s0.h5

However, these appear to be standalone nrSim test vectors. Their corresponding CUPHY files are PDSCH files, for example:

  • TVnr_3040_PDSCH_gNB_CUPHY_s0p0.h5
  • TVnr_3060_PDSCH_gNB_CUPHY_s0p0.h5
  • TVnr_3080_PDSCH_gNB_CUPHY_s0p0.h5
  • TVnr_3100_PDSCH_gNB_CUPHY_s0p0.h5

Therefore I did not rename or substitute these generic files as ULMIX files, because Pattern 59 appears to require ULMIX uplink/mixed-channel data, not standalone PDSCH vectors.

What I have tried:

  1. Searched the whole Aerial source tree, testVectors directory, Docker containers, Docker overlay2 directories, and local Aerial images.
  2. Verified that the exact four ULMIX FAPI filenames are not present.
  3. Built a 26.1 MATLAB Runtime-enabled container based on the 26-1-cubb image.
  4. Installed the 26.1 aerial_mcore wheel from:
    /opt/nvidia/cuBB/5GModel/aerial_mcore/aerial_pkg/dist/
  5. Ran:
    cd /opt/nvidia/cuBB/5GModel/aerial_mcore/examples
    source ../scripts/setup.sh
    ../scripts/gen_e2e_ota_tvs.sh

This command completed successfully, but it only generated/updated cuPhyChEstCoeffs.h5. It did not generate the missing FAPI/CUPHY test vectors.

I also checked the full allChannels generation path:

export REGRESSION_MODE=1
python3 ./example_5GModel_regression.py allChannels

However, this full generation requires large disk space. My A100 server currently has around 305 GiB free on the relevant filesystem, while the documentation indicates that full allChannels generation needs about 430 GiB free space, so I did not run it.

Questions:

  1. Is launch_pattern_F08_1C_59.yaml expected to be runnable in Aerial cuBB 26.1 with generated test vectors?
  2. Should the four files below be generated by the allChannels regression?
    • TVnr_ULMIX_3040_gNB_FAPI_s0.h5
    • TVnr_ULMIX_3060_gNB_FAPI_s0.h5
    • TVnr_ULMIX_3080_gNB_FAPI_s0.h5
    • TVnr_ULMIX_3100_gNB_FAPI_s0.h5
  3. Is gen_e2e_ota_tvs.sh only expected to generate cuPhyChEstCoeffs.h5, or should it also generate FAPI/CUPHY H5 test vectors for Pattern 59?
  4. For F08 1C 4T4R E2E testing in cuBB 26.1, is Pattern 59 still the recommended test pattern, or should we use the single-channel nrSim cases such as PDSCH 3901, PUSCH 7901, PRACH 5901, and PUCCH 6001 instead?
  5. Is it valid to replace TVnr_ULMIX_3040_gNB_FAPI_s0.h5 with TVnr_3040_gNB_FAPI_s0.h5 by modifying the launch pattern, or is that not supported because the corresponding CUPHY vector is PDSCH rather than ULMIX?
  6. If full allChannels generation is required, is there a way to generate only the specific Pattern 59 files instead of generating the full 3000+ test vectors?

Expected result:

I would like to obtain a valid and minimal set of test vectors for F08 1C Pattern 59, or official guidance on which smaller nrSim E2E test cases are recommended for basic functional validation on DGX Spark.

Thank you.

Hello @fltang. please do not re-post this topic in the Android category. I moved it on purpose. If you think it should rather be categorized with DGX Spark, let me know. But since it seems it is mainly an aerial issue, I believe it is best left here.

Thanks!

Hi @fltang,

  1. Yes, all the TVs should be generated, and the pattern is runnable.
  2. Yes.
  3. It generates only cuPhyChEstCoeffs.
  4. We usually use Pattern 59c for a setup verification.
  5. No, they are different TVs.
  6. Unfortunately, no. We don’t have any options to do so.

Thank you.