cuda编程 性能优化

部署运行你感兴趣的模型镜像

概述

做了几个月的gpu的性能优化,一直没来得及总结,先把大概要点总结一下,后面有空进行进一步完善。

开发环境

tesla v100 + cuda 9.0 + linux C

优化点

1. 数据格式

数据格式要进行设计,把每个部分精简至最小,减少对gpu显存的占用,同时缩小数据的比对时间。

2. 内存拷贝

从内存load到缓存,减少load的时间消耗,可采用mmap。

3. 显存拷贝

host缓存到device显存之间的拷贝很慢,减少拷贝次数和数据大小。

4. 多线程优化

采用多线程能让host端的处理程序并行,减少部分处理开销。

5. gpu异步处理API

异步处理,不多说。

6. gpu流并行

使数据拷贝时间和数据处理时间部分重叠,从而实现对处理时间的“隐藏”。

7. gpu处理逻辑优化

多使用寄存器变量,gpu处理时使用的数据不要存在交叉,线程个数是SM的整数倍。

您可能感兴趣的与本文相关的镜像

PyTorch 2.5

PyTorch 2.5

PyTorch
Cuda

PyTorch 是一个开源的 Python 机器学习库,基于 Torch 库,底层由 C++ 实现,应用于人工智能领域,如计算机视觉和自然语言处理

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值