Software Diagnostics with NVIDIA Nsight Compute =============================================== NVIDIA Nsight Compute is an interactive kernel profiler for CUDA applications. It provides detailed performance metrics and API debugging via a user interface and command line tool. Methods of Installation: - You can Load NVIDIA Nsight Compute with any version of CUDA as a module (**recommended method**) - You can install on your local machine and run on a remote server. Load NVIDIA Nsight Compute as a Module -------------------------------------- Nvidia Nsight Compute is available in all versions of CUDA available on PSMN servers. Load the module for the CUDA version of your choice .. code-block:: bash module use /applis/PSMN/debian11/E5/modules/all module load CUDA/12.4.0 Navigate to the Nsight Compute folder .. code-block:: bash cd /applis/PSMN/debian11/E5/software/CUDA/12.4.0/nsight-compute-2024.1.0 To run nsight compute command line interface from any machine ``./ncu`` To run nsight compute graphical user interface from a visual machine ``./ncu-ui`` Installing NVIDIA Nsight Compute on your local machine ------------------------------------------------------ You may download the version of Nsight Compute for your system at: https://developer.nvidia.com/tools-overview/nsight-compute/get-started .. Note:: You will likely be required to create an account with NVIDIA in order to download Nsight Compute. Nsight Compute permits access to remote servers via proxy jump. Therefor, you may install Nsight Compute on your workstation and run it on a remote machine. In order to use this method be sure the ``.ssh/config`` on your local machine is configured for a proxyjump. .. code-block:: bash Hostname r730gpu01 User $mylogin Proxyjump allo-psmn # from inside ENS network (``mylogin`` corresponding to your login at PSMN) * Navigate to the Nsight Compute folder and launch the GUI. .. code-block:: console user@localmachine:~/NVIDIA-Nsight-Compute-2024.3$ ./ncu-ui & Configure a New Remote Connection: * Choose Start Activity - Connection: Click ``+`` * Target Platform - Choose Linux (x86_64) * Add Remote Connection - Authentication Mode : Private Key - Enable TCP Tunnelling: Select - IP/Hostname: r730gpu01 - ADD .. TIP:: Be sure to use the same hostname that is in your ``.ssh/config`` file!