Cuda API 创建对象: #include <cuda_runtime.h> #include <cuda.h> #include <iostream> #include <string> // 获取当前机器的GPU数量 cudaError_t error_id = cudaGetDevice
矩阵乘法跟之前不同,之前一维可以直接写一个kernel,或者多个kernel线性的排布来并行计算,那么矩阵乘法就是由一维向二维转变的关键。这时候一维的kernel排布也变成了二维排布。 这里最关键的点是在于threadIdx和dataIdx的映射,从原来单一的tid变成了二维的tidx和tidy。
该项目代码参考傅哥的课程,很有用的课程,请多多支持他。 reduce 规约求和是cuda中一个经典的问题,其本质是将输入的序列进行求和。 在CUDA的多线程中,我们清楚数据被分为一个一个的block中进行运行,每个block通过warp来并发32个线程进行运算。 所以将数据分割成一个一个block进
上文中,我们运行了一个简单的cuda函数,并且一次过的将其运行了起来,这次,我们需要补充一些基础的概念,通过概念和框架的建立,我们才能走的更远,高屋建瓴的认识更多。 vscode的CUDA调试 继续沿用上次的hello world代码,可能名字有点修改,问题不大,请务必看清楚文件名! 新建一个res
从cuda kernel出发,看懂人生第一个cuda attention
CUDA是什么 cuda是一种gpu编程组件,是一种原生支持GPU软硬件的架构,使得开发者可以直接在 GPU 上编写和执行通用计算程序。 GPU架构 上图是H100白皮书中,H100 GPU带满了144个SM的架构图
ACM
算法
算法竞赛
vllm
AMD算子挑战赛
github
inference
LLM
CUDA入门到入土
cuda/Triton
MLsys24
paper
blog
默认分类