部署
文章平均质量分 85
部署TenosrRT
智障学AI
一起学习检测,分割,CUDA,TensorRT, 量化
展开
-
C++中的多线程
在使用CUDA进行异步编程的同时,使用CPU进行多线程处理也可以进一步提高计算速度。多线程技术可以充分利用多核CPU的计算能力,同时避免单一线程的瓶颈问题。原创 2023-04-10 11:13:15 · 540 阅读 · 0 评论 -
YOLOV5 INT8 量化对比
对比了两种INT8量化, 熵校准的量化有更高的速度,但是吧…原创 2023-04-06 21:53:07 · 2409 阅读 · 1 评论 -
深度学习部署(十九): CUDA RunTime API_error
cudaDeviceSynchronize()函数会同步等待设备完成之前的所有任务并检查是否有错误发生,如果有错误会返回相应的错误码。所以使用cudaDeviceSynchronize()函数可以及时发现是否有错误发生,进而打印出错误信息。原创 2023-03-20 16:01:21 · 443 阅读 · 2 评论 -
深度学习部署(十七): CUDA RunTime API _reduce-sum_规约求和的实现
线程 0 会将当前的 value 值存储到 cache[0] 中,即 cache[0] = value。第二次循环结束后,线程 0 判断 lane < i,即 0 < 32,所以会将 value 加上 cache[0 + 32] 的值(cache[32]),即 value += cache[32]。第三次循环结束后,线程 0 判断 lane < i,即 0 < 16,所以会将 value 加上 cache[0 + 16] 的值(cache[16]),即 value += cache[16]。原创 2023-03-14 11:27:27 · 556 阅读 · 0 评论 -
深度学习部署(十六): CUDA RunTime API _vector-add 使用cuda核函数实现向量加法
像这个案例他就三个数相加,其实启动三个线程就足够了,但是一般block给的是512, 256,所以要设定一下,如果数组的长度小于256/512, 就直接用数组的长度的线程数就好。先定义三个数组: a, b, c 再用cudaMalloc()在GPU上开辟三个内存,在GPU上让a + b 并且让结果存储进c上,再把c的内存从GPU上放到Host上输出。如果线程索引大于了数组的长度就直接返回了,不然就访问了不知道在哪里的内存了。原创 2023-03-13 20:20:09 · 491 阅读 · 0 评论 -
深度学习部署笔记(十五): CUDA_Run_Time_API_parallel_多流并行,以及多流之间互相同步等待的操作方式
2. 单个流串行这个函数演示了单个流中的同步执行,具体解释如下:cudaEvent_t 是 CUDA Runtime API 中的一个结构体,定义在 cuda_runtime_api.h 中。它用于表示一个 CUDA 事件对象,用于记录 GPU 上某个时间点的状态。CUDA 事件可以用于两种目的:记录一个时间点(如开始时间点或结束时间点)。记录一个时间间隔(即时间差)。通常情况下,CUDA 事件被用于在主机和设备之间进行同步,或在设备内部进行同步。例如,可以在主机代码中调用 cudaEventRe原创 2023-03-13 11:40:09 · 1652 阅读 · 2 评论 -
深度学习部署(十三): CUDA RunTime API thread_layout线程布局
在.vscode/settings.json中配置"*.cu": "cuda-cpp"可以实现对cuda的语法解析layout是设置核函数执行的线程数,要明白最大值、block最大线程数、warpsize取值layout的4个主要变量的关系核函数启动时,的参数分别为:原创 2023-03-12 20:10:38 · 1113 阅读 · 2 评论 -
深度学习部署(十二): CUDA RunTime API 共享内存
学习共享变量共享内存原创 2023-03-12 11:46:28 · 573 阅读 · 1 评论 -
深度学习部署(十一): CUDA RunTime API 核函数
学习核函数原创 2023-03-11 12:59:53 · 610 阅读 · 0 评论 -
深度学习部署笔记(十): CUDA RunTime API-2.2流的学习
通过简单的爱情故事理解什么是流原创 2023-03-10 15:43:45 · 542 阅读 · 0 评论 -
深度学习部署笔记(九): CUDA RunTime API-2.1内存管理
通过一个案例学会学习RunTime API的内存管理原创 2023-03-10 09:11:19 · 429 阅读 · 0 评论 -
深度学习部署笔记(八): CUDA RunTime API-2.1Hello CUDA
通过对比CUDA-Driver API 和 Runtime API理解懒加载的含义,不用cuInit, 不用destory,自动使用创建上下文cuDevicePrimaryCtxRetain并设置当前context原创 2023-03-09 18:51:15 · 326 阅读 · 0 评论 -
深度学习部署笔记(六): CUDA Driver API上下文管理设置
学习管理上下文对于RunTimeAPI有很大帮助原创 2023-03-06 22:38:53 · 359 阅读 · 0 评论 -
深度学习部署笔记(五): CUDA 驱动API, 检查功能
CUDA Driver API的检查功能原创 2023-03-06 10:33:24 · 201 阅读 · 0 评论 -
深度学习部署笔记(四): CUDA 驱动API, 初始化CuInit
从几个简单的API开始学习CUDA原创 2023-03-05 16:27:32 · 957 阅读 · 0 评论 -
深度学习部署笔记(三): GPU架构解析 + CUDA编程基础
学习GPU架构以及通过一个小案例来了解CUDA编程的基础grid block原创 2023-03-01 09:09:05 · 1415 阅读 · 0 评论 -
深度学习部署笔记(二): g++, makefile语法,makefile自己的CUDA编程模板
学习makefile原创 2023-02-26 21:37:22 · 1045 阅读 · 1 评论 -
部署笔记(一): 安装CUDA, cudnn,编译一个简单的CUDA程序(c++),以及vscode模板文件
学习部署前的环境配置原创 2023-02-25 21:27:19 · 1049 阅读 · 0 评论