Cuda toolkit — Cuda driver
Before using Nvidia’s profiling tools, it’s essential to have a basic understanding of how CUDA works. In this article, I’ll briefly explain two commonly mentioned concepts in CUDA: CUDA Toolkit and CUDA Driver.
I will provide a simple explanation without diving too deep into the details, so don’t worry.
Before explaining these two terms, let’s start with an analogy to help you understand better: Imagine you’re playing a video game, and your character is at level 10, equipped with a level 5 weapon. In this scenario, your total combat power is 100. You have two ways to increase your character’s combat power:
- The Easy Way: Find a level 10 weapon that matches your character’s level.
- The Hard Way: Increase your character’s level.
A small note: You cannot equip a weapon with a higher level than your character’s level.
In the context of CUDA, it’s similar. If you want to optimize a CUDA program (excluding code-related factors), you have two options: increase the level of the CUDA Toolkit or increase the level of the CUDA Driver.
- CUDA Driver: This represents the capability of your computer (similar to your character’s level). The more powerful your computer is, the faster it can run, and each computer will have a certain level of capability.