01 2023 档案

摘要:错误处理 接收错误信息 定义一个cudaError_t类型的变量来接收错误信息 cudaError_t err; 获取错误信息的字符串 cudaGetErrorString(err); 使用方法: cout<<cudaGetErrorString(err)<<endl; 获取核函数执行后最后一次错误 阅读全文
posted @ 2023-01-31 22:18 Laplace蒜子 阅读(225) 评论(0) 推荐(0) 编辑
摘要:nsys分析应用程序 命令行 nsys profile --stats=true ./CUDA程序 说明:生成的报告文件不会覆盖原来的报告文件,生成名称为report1,report2... 内容 CUDA API统计信息 CUDA核函数的统计信息 CUDA内存操作统计信息(时间和大小) 阅读全文
posted @ 2023-01-31 20:11 Laplace蒜子 阅读(212) 评论(0) 推荐(0) 编辑
摘要:内存 1 内存读写速度 线程寄存器读写:1个时钟周期延迟 线程本地内存读写:非常慢 块的共享内存读写:1个时钟周期延迟,但是可能冲突 网格全局内存读写:500个时钟周期延迟,联合访问时会有隐含延迟。 网格的常量内存和纹理内存读取:500个时钟周期延迟。但是有缓存 2 内存模型 2.1 寄存器 修饰符 阅读全文
posted @ 2023-01-30 17:35 Laplace蒜子 阅读(1518) 评论(0) 推荐(0) 编辑
摘要:核函数 作用 调用核函数的时候,代码会被N个CUDA线程执行N次。 修饰符 __global__ 返回值 函数名(){ ...执行代码 } 调用 函数名<<<BlockNumber,ThreadNumber>>>(); BlockNumber是块的个数。 ThreadNumber是每一个块中的线程个 阅读全文
posted @ 2023-01-20 22:07 Laplace蒜子 阅读(173) 评论(0) 推荐(0) 编辑
摘要:CPU基本架构与GPU基本架构 Shared Memory(SM):共享内存,不是缓存 Special Function Units (SFU):特殊功能单元,超越运算(sin,cos)和插值。 MT Issue:Multithreading issuing unit,多线程发布单元,调度指令 I 阅读全文
posted @ 2023-01-20 21:28 Laplace蒜子 阅读(275) 评论(0) 推荐(0) 编辑
摘要:测试代码 编写“Test.cu”文件 #include"iostream" #include"stdio.h" using namespace std; __global__ void TestFunction(){ printf("The Thread'Id is %d\n",threadIdx. 阅读全文
posted @ 2023-01-20 20:51 Laplace蒜子 阅读(111) 评论(0) 推荐(0) 编辑
摘要:查看Nvidia显卡驱动信息 nvidia-smi 下载对应版本的CUDA https://developer.nvidia.com/cuda-toolkit-archive 执行安装文件 sudo sh cuda_版本信息_linux.run (若driver已经安装过,去掉Driver选项)输入 阅读全文
posted @ 2023-01-20 20:43 Laplace蒜子 阅读(149) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示