CUDA profile 大全 —— nsight computer & nsys & pytorch

Cuda API创建对象: #include <cuda_runtime.h> #include <cuda.h> #include <iostream> #include <string> // 获取当前机器的GPU数量 cudaError_t error_id = cudaGetDeviceCount(&deviceCount); for (int dev = 0; dev < deviceCount; ++dev) { cudaSetDevice(dev); // 初始化当前device的属性获取对象 cudaDeviceProp deviceProp; cudaGetDeviceProperties(&deviceProp, dev); printf("\nDevice %d: \"%s\"\n", dev, deviceProp.name);</code></pre><p style=""></p><p style="">拿到数据后可以查看对应feature</p><pre><code>printf(" Total amount of shared memory per block: %zu bytes\n", deviceProp.sharedMemPerBlock); printf(" Total shared memory per multiprocessor: %zu bytes\n", deviceProp.sharedMemPerMultiprocessor); printf(" Total number of registers available per block: %d\n", deviceProp.regsPerBlock); printf(" Warp size: %d\n", deviceProp.warpSize); printf(" Maximum number of threads per multiprocessor: %d\n", deviceProp.maxThreadsPerMultiProcessor); printf(" Maximum number of threads per block: %d\n", deviceProp.maxThreadsPerBlock); printf(" Max dimension size of a block size (x,y,z): (%d, %d, %d)\n", deviceProp.maxThreadsDim[0], deviceProp.maxThreadsDim[1], deviceProp.maxThreadsDim[2]); printf(" Max dimension size of a grid size (x,y,z): (%d, %d, %d)\n", deviceProp.maxGridSize[0], deviceProp.maxGridSize[1], deviceProp.maxGridSize[2]); ...

October 20, 2025 · 2 min

【CUDA从入门到入土】四、矩阵乘法

矩阵乘法跟之前不同,之前一维可以直接写一个kernel,或者多个kernel线性的排布来并行计算,那么矩阵乘法就是由一维向二维转变的关键。这时候一维的kernel排布也变成了二维排布。 ...

September 3, 2025 · 1 min

【CUDA从入门到入土】三、reduce算子及其优化

该项目代码参考傅哥的课程,很有用的课程,请多多支持他。 reduce 规约求和是cuda中一个经典的问题,其本质是将输入的序列进行求和。 在CUDA的多线程中,我们清楚数据被分为一个一个的block中进行运行,每个block通过warp来并发32个线程进行运算。 ...

August 23, 2025 · 8 min

【CUDA从入门到入土】二、CUDA调试和必知必会 & Nsight Computer 入门

上文中,我们运行了一个简单的cuda函数,并且一次过的将其运行了起来,这次,我们需要补充一些基础的概念,通过概念和框架的建立,我们才能走的更远,高屋建瓴的认识更多。 ...

August 17, 2025 · 7 min

【CUDA从入门到入土】五、cuda_kernel_和_cuda_attention详解

从cuda kernel出发,看懂人生第一个cuda attention

August 17, 2025 · 1 min

【CUDA从入门到入土】一、丝滑的CUDA入门

CUDA是什么 cuda是一种gpu编程组件,是一种原生支持GPU软硬件的架构,使得开发者可以直接在 GPU 上编写和执行通用计算程序。 GPU架构 上图是H100白皮书中,H100 GPU带满了144个SM的架构图 上图是H100中,1个SM的架构图 SM架构详解由此,我们可以高屋建瓴的看懂GPU,这里不雕琢细节,只直白的说明白GPU怎么工作的: PCIE 就是负责数据从显卡和主板之间进出的数据传输协议,理解为传递数据的就对了 ...

August 14, 2025 · 8 min