nvJPEG

GPU加速的JPEG解码器,编码器和代码转换器

nvJPEG库是高性能的GPU加速库,用于解码,编码和转码JPEG格式的图像。nvJPEG2000库用于解码JPEG 2000格式的图像。与仅CPU解码相比,依赖nvJPEG或nvJPEG2000进行解码的应用程序,可提供更高的吞吐量和更低的延迟。

nvJPEG

nvJPEG库为计算机视觉应用中使用的常见JPEG格式(例如图像分类,对象检测和图像分割)提供低延迟解码,编码和转码。

nvJPEG主要功能

  • 同时使用CPU和GPU的混合解码
  • 在A100 GPU上进行基线JPEG解码的硬件加速
  • 单张图像和批量图像解码
  • 单相和多相解码
  • 色彩空间转换为RGB,BGR,RGBI,BGRI和YUV
  • 库的输入位于主机内存中,输出位于GPU内存中
  • 用户为设备提供的内存管理器和固定的主机内存分配

nvJPEG性能

多线程解码速度

与V100和仅CPU解码相比,A100上的硬件解码可实现加速。

处理器:Intel Xeon Platinum 8168 @ 2GHz 3.7GHz Turbo(Skylake)HT On

编码速度

针对常见图像尺寸和格式,CPU与V100和A100 GPU之间的JPEG基线编码吞吐量比较。

处理器:Intel Xeon Platinum 8168 @ 2GHz 3.7GHz Turbo(Skylake)HT On


nvJPEG2000

nvJPEG2000库适用于在深度学习,医学成像,数字病理学,遥感和数字电影应用等领域的研究中使用JPEG 2000格式图像的应用程序开发人员和研究人员。nvJPEG2000从CPU内存读取和解码JPEG 2000格式的图像数据。解码后的输出在GPU内存中。该库依赖于CPU和GPU进行解码。

nvJPEG2000的主要功能

  • 输出格式:具有任意宽度和高度的灰度和彩色图像
  • 压缩技术:有损(小波CDF 9/7)和无损(小波CDF 5/3)图像压缩和解压缩
  • 支持jp2文件格式和jpeg2000代码流

nvJPEG2000性能

4倍更快的无损解码

无损:5-3小波变换

处理器:Intel Xeon Gold 6240 @ 2GHz 3.9GHz Turbo(Cascade Lake)HT On

7倍更快的有损解码

有损:9-7小波变换

处理器:Intel Xeon Gold 6240 @ 2GHz 3.9GHz Turbo(Cascade Lake)HT On

nvJPEG库的更多相关文章

  1. 在NVIDIA A100 GPU上利用硬件JPEG解码器和NVIDIA nvJPEG库

    在NVIDIA A100 GPU上利用硬件JPEG解码器和NVIDIA nvJPEG库 根据调查,普通人产生的1.2万亿张图像可以通过电话或数码相机捕获.这样的图像的存储,尤其是以高分辨率的原始格式, ...

  2. NVIDIA A100 GPUs上硬件JPEG解码器和NVIDIA nvJPEG库

    NVIDIA A100 GPUs上硬件JPEG解码器和NVIDIA nvJPEG库 Leveraging the Hardware JPEG Decoder and NVIDIA nvJPEG Lib ...

  3. nvJPEG Codec库

    nvJPEG Codec库 nvJPEG库是高性能的GPU加速库,用于解码,编码和转码JPEG格式的图像.nvJPEG2000库用于解码JPEG 2000格式的图像.与单CPU解码相比,依赖nvJPE ...

  4. 在NVIDIA A100 GPU中使用DALI和新的硬件JPEG解码器快速加载数据

    在NVIDIA A100 GPU中使用DALI和新的硬件JPEG解码器快速加载数据 如今,最流行的拍照设备智能手机可以捕获高达4K UHD的图像(3840×2160图像),原始数据超过25 MB.即使 ...

  5. 用NVIDIA A100 GPUs提高计算机视觉

    用NVIDIA A100 GPUs提高计算机视觉 Improving Computer Vision with NVIDIA A100 GPUs 在2020年英伟达GPU技术会议的主题演讲中,英伟达创 ...

  6. 菜鸟Python学习笔记第一天:关于一些函数库的使用

    2017年1月3日 星期二 大一学习一门新的计算机语言真的很难,有时候连函数拼写出错查错都能查半天,没办法,谁让我英语太渣. 关于计算机语言的学习我想还是从C语言学习开始为好,Python有很多语言的 ...

  7. TinyWeb v1.0 正式完成第一个Release版本(功能基于 libuv 跨平台库)

    使用方法很简单,很容易融入现有项目,使现有项目拥有Web网站功能和WebSocket,以及Socket直连! 并且包含了一个跨平台(windows/linux)工具集合; 嗯,也挺棒的^,^ 在项目中 ...

  8. 在 Laravel 中使用图片处理库 Integration/Image

    系统需求 PHP >= 5.3 Fileinfo Extension GD Library (>=2.0) … or … Imagick PHP extension (>=6.5.7 ...

  9. [APUE]标准IO库(下)

    一.标准IO的效率 对比以下四个程序的用户CPU.系统CPU与时钟时间对比 程序1:系统IO 程序2:标准IO getc版本 程序3:标准IO fgets版本 结果: [注:该表截取自APUE,上表中 ...

随机推荐

  1. html书签展示(带搜索)

    源代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title ...

  2. 使用 mvn install 命令将本地jar包注册到本地maven仓库

    前提: 要安装maven并配置环境变量. windows 系统环境变量配置 新建环境变量:MAVEN_HOME    值为:maven的解压包路径或安装路径. 在path 环境变量中添加:%MAVEN ...

  3. UVA10905孩子们的游戏

    题意:       给你n个数字,让你用这n个数组组成一个最大的数字并输出来. 思路:       这个题目看完第一反应就是直接按照字符串排序,然后轻轻松松写完,交上去直接wa了,为什么会wa呢?感觉 ...

  4. Andrew Ng机器学习算法入门(十):过拟合问题解决方法

    在使用机器学习对训练数据进行学习和分类的时候,会出现欠拟合和过拟合的问题.那么什么是欠拟合和过拟合问题呢?

  5. 五、postman公共函数及newman运行与生成测试报告

    一.公共函数 postman中定义公共函数如下 1.每次断言的时候都需要重写或者复制之前的断言代码,可以通过如下方法定义断言的公共函数,以后每次断言的时候只需要调用公共函数即可进行断言 设置公共函数对 ...

  6. ColyseusJS 轻量级多人游戏服务器开发框架 - 中文手册(系统保障篇)

    快速上手多人游戏服务器开发.后续会基于 Google Agones,更新相关 K8S 运维.大规模快速扩展专用游戏服务器的文章.拥抱️原生 Cloud-Native! 系列 ColyseusJS 轻量 ...

  7. 使用C#实现一个PPT遥控器

    说明 本项目参考了 https://github.com/yangzhongke/PhoneAsPrompter 项目来完成实现,并对其进行了一些修改完善. 完整代码可以到 https://githu ...

  8. Vue | 指令实现自动翻译填充英文名功能

    背景:应用系统中存在多个创建实体表单,表单填写时,在填写中文名称后,要填写对应的英文名作为标识或数据库查询索引. 需求:填写中文名的同时,系统自动生成英文名并填充到表单中,辅助用户操作,节约操作时间. ...

  9. docker中运行envoy 报错 cannot bind '0.0.0.0:80': Permission denied

    docker-compose文件 version: '3' services: envoy: image: envoyproxy/envoy-alpine:v1.15-latest volumes: ...

  10. 登录框-element-ui 样式调节

    element-ui样式调节 首先设置布局 如果想要实现如下效果 需要两行,然后设置偏移,第一行中间只是站位,没有内容,可以考虑使用div占位,设置最小高度 el-card调整圆角 border-ra ...