What is the difference between CUDA Toolkit and NVIDIA HPC SDK

The primary difference is the intended audience, HPC or general use. They do both share some components, but only those that are used by both cases.

Given you’re doing more with AI and Graphics, I’d say the General CUDA SDK is more appropriate. Also, NVHPC doesn’t support Windows since Linux dominates HPC data centers. I’ve had users successfully use NVHPC on WSL2, but that’s really Linux not native Windows.

Is this module thing really important?

Modules are often used in HPC data centers as an easy method for users to set and switch environment variables. For example, if you were switching back and forth between a Clang environment and an NVHPC environment, then modules make it easy to do, just one command. Without modules, you’re having to manually change the PATH and other env variables.

Though they are not needed (I rarely use them myself), you just need to set your environment settings on the command line or shell configuration file. A little more work, but if you’re not changing it often, then not an issue.

1 Like