[BUG]: Replace obsolete Nsight GUI utility names with nsys-ui and ncu-ui
Nobody has claimed this yet.
- Dominant language
- Cython
- Stars
- 3.4k
- Forks
- 329
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 116
Description
Problem
cuda.pathfinder.SUPPORTED_BINARY_UTILITIES currently includes the legacy GUI names nsight-sys and nsight-compute, but omits the executable names used by supported Nsight releases: nsys-ui and ncu-ui.
Because find_nvidia_binary_utility() treats the requested name literally (and appends .exe on Windows), calls using the legacy names return None on a current standalone Nsight installation even though the corresponding GUI is installed.
The CLI entries nsys and ncu are correct and should remain unchanged.
Evidence
- Current supported-name table:
https://github.com/NVIDIA/cuda-python/blob/main/cuda_pathfinder/cuda/pathfinder/_binaries/supported_nvidia_binaries.py - Current lookup implementation:
https://github.com/NVIDIA/cuda-python/blob/main/cuda_pathfinder/cuda/pathfinder/_binaries/find_nvidia_binary_utility.py - Nsight Systems documents the GUI executable as
nsys-ui:
https://docs.nvidia.com/nsight-systems/InstallationGuide/index.html#launching-the-gui - Nsight Compute documents the GUI executable as
ncu-ui:
https://docs.nvidia.com/nsight-compute/NsightCompute/index.html#quickstart - The last confirmed Windows package containing
nsight-sys.exewas Nsight Systems 2020.3.4.32, bundled with CUDA Toolkit 11.1:
https://developer.download.nvidia.com/compute/cuda/repos/windows/x86_64/version_11.1.0.json
These legacy names predate the CUDA Toolkit majors currently covered by cuda.pathfinder's “two most recent major versions” support policy.
Proposed change
- Replace
nsight-syswithnsys-uiandnsight-computewithncu-uiin the supported binary descriptors. - Preserve
nsysandncuas the CLI utility names. - Add standalone Windows discovery through the existing Nsight registry roots:
- Nsight Systems: locate
nsys-ui.exeunder the host directory (for example,host-windows-x64). - Nsight Compute: locate the root shortcut and/or the actual executable under
host/windows-desktop-*/ncu-ui.exe.
- Nsight Systems: locate
- Add tests for wheel/Conda layouts and standalone Windows layouts.
If removing names from the public supported tuple is considered too disruptive, a compatibility alternative is to retain the old inputs temporarily as deprecated aliases that resolve to the current UI executable, while documenting that the returned basename differs.
Expected behavior
find_nvidia_binary_utility("nsys-ui") # absolute path to nsys-ui[.exe]
find_nvidia_binary_utility("ncu-ui") # absolute path to ncu-ui[.exe]
find_nvidia_binary_utility("nsys") # unchanged
find_nvidia_binary_utility("ncu") # unchanged
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with cuda_pathfinder/cuda/pathfinder/_binaries/supported_nvidia_binaries.py and find_nvidia_binary_utility.py to trace supported names and platform-specific lookup behavior. Add coverage for wheel, Conda, and standalone Windows layouts, then verify that nsys-ui and ncu-ui resolve to absolute executable paths while nsys and ncu remain unchanged.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100