GPU加速
文章平均质量分 89
NVIDIA GPU加速
TracelessLe
BetterLife,BetterWorld.
展开
-
TensorRT 从7.2升级到8.5,改写plugin以适配新版本
TensorRT是NVIDIA推出的一款高效深度学习模型推理框架,其包括了深度学习推理优化器和运行时,能够让深度学习推理应用拥有低时延和高吞吐的优点。TensorRT的版本迭代速度非常快,很多之前写的plugin在版本升级后可能就没法直接使用,这时就需要将代码升级,以适配新版TRT。本文仅记录TRT从7.2升级到8.5时,改写plugin过程中需要注意的内容。原创 2023-06-07 18:07:37 · 1535 阅读 · 0 评论 -
PyTorch2.0向后兼容性和加速效果浅探
在PyTorch2022开发者大会上,PyTorch团队发布了一个新特性——,将PyTorch的性能推向了新的高度,称这个新版本为PyTorch2.0。的引入不影响之前的功能,其是一个完全附加和可选的功能,因此PyTorch2.0完全向后兼容,基于之前1.x版本开发的项目可以直接迁移到PyTorch2.0使用。原创 2023-05-13 19:58:01 · 3586 阅读 · 1 评论 -
使用tensorrt_inference库导出RetinaFace-R50模型到TensorRT Engine
前言TensorRT是NVIDIA推出的一款高效深度学习模型推理框架,其包括了深度学习推理优化器和运行时,能够让深度学习推理应用拥有低时延和高吞吐的优点。RetinaFace 作为一款InsightFace出品的较为优秀的单阶段人脸检测器,使用TensorRT进行模型转化来提升推理速度很有必要。RetinaFace TensorRT加速本文主要参考tensorrt_inference开源库,将RetinaFace -R50模型转为TensorRT engine并使用自带C++代码运行测试。原创 2022-03-24 21:00:27 · 5385 阅读 · 0 评论 -
TensorRT debug及FP16浮点数溢出问题分析
前言TensorRT是NVIDIA推出的一款高效深度学习模型推理框架,其包括了深度学习推理优化器和运行时,能够让深度学习推理应用拥有低时延和高吞吐的优点。除了常规的加速功能外,TensorRT还提供了一套可用于engine生成过程中debug的工具,包括Polygraphy、ONNX GraphSurgeon和PyTorch-Quantization。这些小工具用处很大,值得花时间进一步研究。Debug方法示例polygraphyPolygraphy是TensorRT官方提供的一系列小工具合集原创 2021-10-08 20:02:18 · 7773 阅读 · 3 评论 -
使用cuFFT求解傅里叶变换时的最优尺寸选择
前言傅里叶变换(Fourier Transform)是数字信号处理领域中一个非常重要的数学变换方法,用来实现信号从时域到频域的变换过程。离散傅里叶变换(Discrete Fourier Transform,DFT)是连续傅里叶变换在离散系统中的表示形式,由于其计算量大,在很长一段时间内其应用受到了极大限制。快速傅里叶变换(Fast Fourier Transform,FFT),是快速计算序列的离散傅里叶变换(DFT)或其逆变换的方法。是由Cooley和Tukey于20世纪60年代(1965年)合作发表原创 2021-10-08 13:55:03 · 1542 阅读 · 0 评论 -
NVIDIA NSight System工具安装和使用介绍(MacOS)
前言在之前的博客《NVIDIA nvprof / nvvp工具安装和使用介绍》中有提到NVIDIA GPU编程的性能分析工具之一——NVIDIA nvprof / nvvp,该工具是英伟达N卡GPU编程中用于观察的利器。全称是NVIDIA Visual Profiler,是由2008年起开始支持的性能分析器。交互性好,利于使用。其中记录运行日志时使用命令nvprof,可视化显示日志时使用命令nvvp。由于nvprof在性能表现上不是很好,在复杂的GPU编程环境下,nvprof / nvvp功能大打折扣。原创 2021-05-17 20:19:50 · 11612 阅读 · 0 评论 -
替换Python的imageio包中自带的ffmpeg以支持GPU编解码加速
前言imageio是一个比较好用的用于读写图片数据的Python library,在处理视频数据时是以imageio_ffmpeg为backend的。问题当使用imageio读写视频时,其会调用imageio_ffmpeg包以使用ffmpeg作为backend。而其自带的ffmpeg只支持CPU,不支持GPU编解码加速。深入到imageio_ffmpeg所在位置,例如~/.conda/envs/env_name/lib/python3.7/site-packages/imageio_ffmpeg原创 2021-03-31 21:01:22 · 4845 阅读 · 6 评论 -
解决NVIDIA GeForce系列显卡NVENC并发Session数目限制问题
前言NVIDIA NVENC是NVIDIA显卡从2012年3月发布的Kepler-based GeForce 600系列引入的在视频编码方面的一个特性。较好地支持了显卡硬解码能力,加快视频解码速度。我们在使用支持硬编码的NVIDIA GPU进行视频编码时,一般是支持多路并发的,但是对于不同系列的显卡并发数支持不一样。通过官网可以看到不同系列对多路编码的支持。问题分析在使用GeForce系列做多路并发编码时,发现一旦并发数目超过3个,则超过3个的线程在创建编码Session时会直接报错。Runti原创 2021-02-08 14:28:22 · 10766 阅读 · 7 评论 -
NVIDIA CUDA核函数编写及CUDA API调用注意事项之In-place
引言CUDA(Compute Unified Device Architecture,统一计算架构)是由NVIDIA所推出的一种集成技术,是其对于GPGPU(A General-Purpose Graphics Processing Unit)的正式名称。通过该技术,开发者可以利用NVIDIA的GeForce 8以后的GPU进行计算。极大加速计算型应用的效率。通常用于游戏开发、视频编解码、图像处理等领域。问题分析在编写CUDA核函数时,或者直接调用CUDA封装好的API时,通常会有需要in-plac原创 2021-02-08 11:53:24 · 788 阅读 · 0 评论 -
Ubuntu20.04上3090显卡安装Nvidia驱动和CUDA11.1及cuDNN8.0.4
前言GeForce RTX 3090是最新显卡,CUDA支持也只支持到最新版本11.0及以上。本文记录了GeForce RTX 3090安装驱动和CUDA11.1、cuDNN等过程,CUDA11.1和cuDNN与CUDA10.1及以前的安装过程略有不同。----------软硬件信息------------ 操作系统:Ubuntu20.04 显卡:GeForce RTX 3090------------------------------一、安装Nvidia驱动根据显卡型号3090,去官网原创 2021-01-15 21:35:38 · 18355 阅读 · 4 评论 -
Ubuntu20.04系统CUDA11.1环境上MXNet源码安装
前言MXNet预编译包目前支持CUDA8.0至CUDA11.0等常用版本,可以直接通过pip安装。而在新的GeForce 3090显卡上,如果安装了CUDA11.1,则无法采用这种便捷方式安装MXNet。通过查找资料,发现可以通过源码安装的方式兼容CUDA11.1。安装下载源码git clone --recursive https://github.com/apache/incubator-mxnet mxnetcd mxnetgit checkout 1.8.0.rc2若采用下面这种原创 2021-01-15 21:05:44 · 3557 阅读 · 15 评论 -
Ubuntu上安装ffmpeg-cuda加速
前言FFmpeg 是一个开放源代码的自由软件,可以运行音频和视频多种格式的录影、转换、流功能,包含了libavcodec——这是一个用于多个项目中音频和视频的解码器库,以及libavformat——一个音频与视频格式转换库。“FFmpeg”这个单词中的“FF”指的是“Fast Forward(快速前进)”。FFmpeg基础组件:(1)命令行应用程序ffmpeg:用于对视频或音频进行处理ffplay:一个简单的播放器,基于SDL与FFmpeg库ffprobe:用于显示媒体文件的信息(2)函原创 2020-08-24 21:29:31 · 2954 阅读 · 2 评论 -
NVIDIA nvprof / nvvp工具安装和使用介绍
NVIDIA nvprof / nvvp工具是英伟达N卡GPU编程中用于观察的利器。全称是NVIDIA Visual Profiler,是由2008年起开始支持的性能分析器。交互性好,利于使用。其中记录运行日志时使用命令nvprof,可视化显示日志时使用命令nvvp。原创 2020-12-08 20:39:17 · 17870 阅读 · 0 评论