[Xavier NX] Use nbody on the DevKit 2022/01/03

Dear Sir,

Sorry to re-create this topic again. I had got busy recently.
Extend from this topic which I created. [Xavier NX] Use nbody on the DevKit.

According last suggestion, I’ve validated the nbody with the utility Xvfb, but it seems still not work so far. Would you mind to give us more advice?

lanner@lanner-desktop:~$ cd /usr/local/cuda/samples/5_Simulations/nbody
lanner@lanner-desktop:/usr/local/cuda/samples/5_Simulations/nbody$ Xvfb :1 &
[1] 7220
lanner@lanner-desktop:/usr/local/cuda/samples/5_Simulations/nbody$ export DISPLAYY=:1
lanner@lanner-desktop:/usr/local/cuda/samples/5_Simulations/nbody$ ./nbody -fp64  -numbodies=1024
Run "nbody -benchmark [-numbodies=<numBodies>]" to measure performance.
        -fullscreen       (run n-body simulation in fullscreen mode)
        -fp64             (use double precision floating point values for simulation)
        -hostmem          (stores simulation data in host memory)
        -benchmark        (run benchmark to measure performance)
        -numbodies=<N>    (number of bodies (>= 1) to run in simulation)
        -device=<d>       (where d=0,1,2.... for the CUDA device to use)
        -numdevices=<i>   (where i=(number of CUDA devices > 0) to use for simulation)
        -compare          (compares simulation results running once on the default GPU and once on the CPU)
        -cpu              (run n-body simulation on the CPU)
        -tipsy=<file.bin> (load a tipsy model file for simulation)

NOTE: The CUDA Samples are not meant for performance measurements. Results may vary when GPU Boost is enabled.

> Windowed mode
> Simulation data stored in video memory
> Double precision floating point simulation
> 1 Devices used for simulation
freeglut (./nbody):  ERROR:  Internal error <FBConfig with necessary capabilities not found> in function fgOpenWindow
lanner@lanner-desktop:/usr/local/cuda/samples/5_Simulations/nbody$

There is the log file which I validated for reference.
Xavier_nbody_20220103_1634.log (32.0 KB)

Best Regards,
MOMO Chen

Hi,

Thanks for the feedback on this issue.
Confirmed that we can also reproduce the FBConfig error on our side.

We are trying to find if any alternative for virtual display.
Will share more information with you later.

Thanks.

Dear Aasta,

Thanks for your reply kindly.
There is a good news if I add the argument “-benchmark” for the nbody.
(Only execute nbody without 'Xvfb :1 &'and ‘export DISPLAY=:1’)
It seems working as the log below show.
Xavier_nbody_20220104_1339.log (5.2 KB)

root@lanner-desktop:/usr/local/cuda-10.2/samples/5_Simulations/nbody# ./nbody -fpp64 -benchmark -numbodies=65536 &
Run "nbody -benchmark [-numbodies=<numBodies>]" to measure performance.
	-fullscreen       (run n-body simulation in fullscreen mode)
	-fp64             (use double precision floating point values for simulation)
	-hostmem          (stores simulation data in host memory)
	-benchmark        (run benchmark to measure performance) 
	-numbodies=<N>    (number of bodies (>= 1) to run in simulation) 
	-device=<d>       (where d=0,1,2.... for the CUDA device to use)
	-numdevices=<i>   (where i=(number of CUDA devices > 0) to use for simulation)
	-compare          (compares simulation results running once on the default GPU and once on the CPU)
	-cpu              (run n-body simulation on the CPU)
	-tipsy=<file.bin> (load a tipsy model file for simulation)

NOTE: The CUDA Samples are not meant for performance measurements. Results may vary when GPU Boost is enabled.

> Windowed mode
> Simulation data stored in video memory
> Double precision floating point simulation
> 1 Devices used for simulation
GPU Device 0: "Xavier" with compute capability 7.2

> Compute 7.2 CUDA device: [Xavier]
number of bodies = 65536

root@lanner-desktop:/usr/local/cuda-10.2/samples/5_Simulations/nbody# tegrastats  
RAM 1148/7766MB (lfb 1432x4MB) SWAP 0/3883MB (cached 0MB) CPU [11%@1420,7%@1420,0%@1420,100%@1420,2%@1420,0%@1420] EMC_FREQ 3%@1600 GR3D_FREQ 99%@1109 VIC_FREQ 0%@115 APE 150 MTS fg 0% bg 4% AO@43C GPU@45.5C PMIC@100C AUX@45C CPU@46C thermal@45.1C VDD_IN 8818/8818 VDD_CPU_GPU_CV 4057/4057 VDD_SOC 1215/1215
RAM 1148/7766MB (lfb 1432x4MB) SWAP 0/3883MB (cached 0MB) CPU [1%@1420,0%@1420,0%@1420,100%@1420,3%@1420,0%@1420] EMC_FREQ 2%@1600 GR3D_FREQ 99%@1109 VIC_FREQ 0%@115 APE 150 MTS fg 0% bg 0% AO@43.5C GPU@46C PMIC@100C AUX@45C CPU@45.5C thermal@45.1C VDD_IN 8615/8716 VDD_CPU_GPU_CV 3976/4016 VDD_SOC 1176/1195

The GPU(GR3D_FREQ)'s loading seems up to full loading now.

Best Regards,
MOMO Chen

Hi,

Thanks for the update.
Does this work for you? Running the sample with -benchmark?

Thanks.

Dear AastaLLL,

Yes, it seems useful enough for our stress so far.
Thanks for your advice so far.

Best Regards,
MOMO Chen