/mcmc-staggered-board

Primary LanguagePythonMIT LicenseMIT

MCMC Staggered Board

This project was developed as part of the SDSC GPU Hackathon'22 and was presented at the Open ACC conference. The overview and pthe presentation can be found here.

Profiling with NightSight Systems application

Files are under versions/gpu-v0.1nsight/

  1. Download from NVIDA Night Sight systems page (https://developer.nvidia.com/gameworksdownload#?dn=nsight-systems-2022-2).

  2. Install the nvtx and torch modules using the pip3 commands in your environment.
    pip3 install nvtx
    pip3 install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu113

  3. Add the function nvtx.range_push, nvtx.range_pop between the python function for profiling.

    nvtx.range_push("name of this range/function")
    func()
    nvtx.range_pop()

    For more references, view the NightSight systems training documentation at the below link.
    https://github.com/NVIDIA/nsight-training/blob/master/cuda/2021_gtc/x-ac-03-v1/task1/task/nsys/04_cpu_bottleneck.ipynb

  4. After updating with nvtx utilities function, start profiling with nsys cmds and the NightSight Systems application.

    nsys profile --trace cuda,osrt,nvtx -o <output_file> --stats=true python likelihood_func1.py

    nsys cmds documentation - https://docs.nvidia.com/nsight-systems/UserGuide/index.html#example-single-command-lines

  5. Open the output files(.qdrep) using the NightSight system UI and all the python profiling functions would be available under the NVTX section.