• 2025-01-18Python_CUDA入门教程学习记录
    这是本人21年读书时学习CUDA基础知识保留的一些笔记,学习时的内容出处和图片来源不记得了,仅作为个人记录!CUDA编程关键术语:host:cpudevice:GPUhostmemory:cpu内存devicememory:gpuonboard显存kernels:调用CPU上的在GPU执行的函数devicefunction:只能在GP
  • 2025-01-04高性能计算-CUDA矩阵加法及优化测试
    1.目标:对16384*16384规模的矩阵进行加法运算,对比CPU和GPU计算的效率,还有不同线程块大小规模下对效率的影响;并做可能的优化测试。2.核心代码/*用GPU对二维矩阵做加法,分析不同线程块规模下的性能变化*/#include<stdio.h>#include<stdlib.h>#include<sys/time.h>#
  • 2024-09-03cuda编程[1]:一二三维网格和块的核函数
    目录前言核函数一维二维三维结果分析前言所有的代码下载链接:code。以下代码展示了如何在CUDA中打印网格和线程的索引信息。代码包括一维、二维和三维的网格和块的设置,并定义了多个内核函数来输出当前的索引信息。核函数打印线程索引__global__voidprint_idx_kerne
  • 2024-08-16NVIDIA CUDA 编程模型之Grid和Block
    NVIDIACUDA编程模型允许灵活地配置grid和block,使程序能够在不同规模和结构上运行。CUDA中的grid可以是1、2或3维的,block也可以是1、2或3维的。这意味着存在多种可能的组合,每种组合都会影响最终线程的编号计算。下表展示了所有可能的grid和block组合,并描述了
  • 2024-06-09CUDA编程学习笔记-02
    CUDA代码高效计算策略高效公式✒️Math代表数学计算量,Memory代表每个线程的内存
  • 2023-10-25cuda vectorized实现矩阵转置
    使用了共享内存和向量化传输,目前为止效果最好的一个实现__global__voidtransposeSmemVec(float*input,float*output,constintX,constintY){__shared__floatsmem[32*4*32];unsignedintix=4*(blockDim.x*blockIdx.x+threadIdx.x);
  • 2023-10-08CUDA C编程权威指南:2.1-CUDA编程模型
      本文主要通过例子介绍了CUDA异构编程模型,需要说明的是Grid、Block和Thread都是逻辑结构,不是物理结构。实现例子代码参考文献[2],只需要把相应章节对应的CMakeLists.txt文件拷贝到CMake项目根目录下面即可运行。1.Grid、Block和Thread间的关系  GPU中最重要的2种内存是全局
  • 2023-09-03CUDA 线程ID 计算方式
    threadID的计算方式,简单来说很像小学学的除法公式,本文转载自同学一篇博客;并进行简单修改;被除数=除数*商+余数用公式表示:$$线程Id=blockId*blockSize+threadId$$blockId:当前block在grid中的坐标(可能是1维到3维)blockSize:block的大小,描述其中含有多少个thr
  • 2023-08-07cuda系列详细教程
    随着人工智能的发展与人才的内卷,很多企业已将深度学习算法的C++部署能力作为基本技能之一。面对诸多arm相关且资源有限的设备,往往想更好的提速,满足更高时效性,必将更多类似矩阵相关运算交给CUDA处理。同时,面对市场诸多教程与诸多博客岑子不起的教程或高昂教程费用,使读者(特别是