NVIDIA CUDA Toolkit 12.4 no longer supports development or running applications on macOS. While there are no tools which use macOS as a target environment, NVIDIA is making macOS host versions of these tools that you can launch profiling and debugging sessions on supported target platforms.

You may download all these tools here. Note that the Nsight tools provide the ability to download these macOS host versions on their respective product pages.

Please visit each tool's overview page for more information about the tool and its supported target platforms.

The macOS host tools provided are:

  • Nsight Systems - a system profiler and timeline trace tool supporting Pascal and newer GPUs
  • Nsight Compute - a CUDA kernel profiler supporting Volta and new GPUs
  • Visual Profiler - a CUDA kernel and system profiler and timeline trace tool supporting older GPUs (see installation instructions, below)
    • NOTE: As of CUDA Toolkit 12.4.0, Visual Profiler's macOS host client support is deprecated and will be dropped in an upcoming release
  • cuda-gdb - a GPU and CPU CUDA application debugger (see installation instructions, below)
    • NOTE: As of CUDA Toolkit 12.3.0, cuda-gdb's macOS host client support is deprecated and will be dropped in an upcoming release (doc reference)

Download
Revision History

NVIDIA development tools are freely offered through the NVIDIA Registered Developer Program


Instructions for installing cuda-gdb on the macOS

    This tar archive holds the distribution of the CUDA 12.4 cuda-gdb debugger front-end for macOS.
    Native macOS debugging is not supported in this release. Remote debugging from a macOS host to other CUDA enabled targets, however, is supported.
    Supported Mac platforms: macOS 10.13
    To install:
  1. Create an installation directory
      INSTALL_DIR=$HOME/cuda-gdb-darwin-12.4
      mkdir $INSTALL_DIR
      cd $INSTALL_DIR
  2. Download the cuda-gdb-darwin-12.4.59.tar.gz tar archive into $INSTALL_DIR above
  3. Unpack the tar archive
      tar fxvz cuda-gdb-darwin-12.4.59.tar.gz
  4. Add the bin directory to your path
      PATH=$INSTALL_DIR/bin:$PATH
  5. Run cuda-gdb --version to confirm you're picking up the correct binaries
      cuda-gdb --version
  6. You should see the following output:

    NVIDIA (R) CUDA Debugger
    12.4 release
    :
  • Follow the directions for remote debugging at
      https://docs.nvidia.com/cuda/cuda-gdb/index.html#remote-debugging


  • Instructions for installing Visual Profiler on the macOS

      Native macOS profiling is not supported in this release. Remote profiling from a macOS host to other CUDA enabled targets, however, is supported.
      Supported Mac platforms: macOS 10.13
      Steps to install:
    1. Double click .dmg file to mount it and access it in finder.
    2. Drag nvvp folder and drop it to any location you want (say <nvvp_mac>).
      Directory Structure:
        |--nvvp
        |--bin/
        |--lib64/
        |--libnvvp/
    3. Download and install the required version of JDK.
      (Refer to the Notes about JRE Requirements when using Visual Profiler on the macOS section, below)
      Steps to run:
    1. Open terminal.
    2. Change to the bin folder
        > cd <nvvp_mac>/nvvp/bin
    3. Run nvvp script file in command line
      1. For macOS version less than 11
          > ./nvvp -vm <path_to_java>
        <path_to_java> should point to the JRE update 151 version of Java (See Notes about JRE Requirements, below).
          For example:
          > ./nvvp -vm /Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home/jre/bin/java
      2. For macOS version 11 (Big Sur) and beyond
        • Make sure that required java is in your JAVA_HOME. For example: /Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home
        • Run nvvp executable.
            > ./nvvp
        • If you get the error when loading the JVM library, for example:
            JavaVM: Failed to load JVM: /Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home/lib/libserver.dylib
            JavaVM FATAL: Failed to load the jvm library.
          Then create symlink for libjvm.dylib and run nvvp again
            > sudo ln -s /Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home/jre/lib/server/libjvm.dylib /Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home/lib/libserver.dylib
            > ./nvvp
        • If you get the error when attempting use the lib.dylib library, for example:
            'lib.dylib' cannot be allowed to run because its origin cannot be verified
          Then go to 'System Preferences' → 'Security & Privacy' → 'General' and click the 'Allow ' button for the blocked 'lib.dylib'.
          Run nvvp again:
            > ./nvvp
      Summary of supported features:
    1. Remote profiling
    2. Import nvprof output files

      Notes about JRE Requirements when using Visual Profiler on the macOS
        OpenJDK provides an open-source (and standards compliant) implementation of a Java compliant JVM.
        Binaries are provided by various vendors such as Oracle, Azul Systems (Zulu), Amazon, Red Hat, IBM, etc.
        Visual Profiler needs to use an older version of Java, specifically JRE update 151, to work correctly.
        This is currently not offered by Oracle JDK but is provided by Azul Systems (Zulu).


    Revision History

    Current Version
    Version Archive