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. 【ElasticSearch】shards,replica,index之间的关系

    1.index 包含多个shard ,在创建index的时候可以自定义shards和replica的数量 例如: 新增一个index,手动指定shard和replica的数量 PUT demo_ind ...

  2. 010 Editor体验

    源代码的我们现在拥有各式各样的IDE和编辑器可以去查看,但二进制文件对于大多数软件只能做到显示16进制,而不能按照文件类型的格式去显示.今天我们就用dex文件让010 show. 安装软件: http ...

  3. Spring核心结构及核心思想

    Spring核心结构 基本概念 Spring是⼀个分层⾮常清晰并且依赖关系.职责定位⾮常明确的轻量级框架,主要包括⼏个⼤模块:数据处理模块.Web模块.AOP(Aspect Oriented Prog ...

  4. c++学习的一些忠告(转载)

    c++学习的一些忠告 1.把C++当成一门新的语言学习(和C没啥关系!真的.): 2.看<Thinking In C++>,不要看<C++变成死相>: 3.看<The C ...

  5. 解读vue-server-renderer源码并在react中的实现

    前言 ​ 在博客开发的过程中,有这样一个需求想解决,就是在SSR开发环境中,服务端的代码是是直接通过webpack打包成文件(因为里面包含同构的代码,就是服务端与客户端共享前端的组件代码),写到磁盘里 ...

  6. 正则表达式、编辑器(vi、sed、awk)

    1. vi 2. 正则表达式 3. sed 1)打印命令:p 2)删除命令:d 3)替换命令:s 4. awk 1)awk 基本用途 2)匹配打印 3)判断打印 4)数组 1. vi vi 是 Lin ...

  7. [bug] Failed building wheel for xxx

    参考 https://blog.csdn.net/pengzhisen123/article/details/79049834 https://www.lfd.uci.edu/~gohlke/pyth ...

  8. [刷题] 454 4Sum II

    要求 给出四个整型数组ABCD,寻找有多少 i j k l 的组合,使得A[i]+B[j]+C[k]+D[l]=0 ABCD元素个数均为N,0<=N<=500 示例 输入: A = [ 1 ...

  9. n/a或N/A是英语“不适用”(Not applicable)

    n/a或N/A是英语"不适用"(Not applicable)等类似单词的缩写,常可在各种表格中看到. N/A比较多用在填写表格的时候,表示"本栏目(对我)不适用&quo ...

  10. 运维实战案例之“Too many open files”错误与解决方法

    运维实战案例之"Too many open files"错误与解决方法   技术小甜 2017-11-16 15:02:00 浏览869 服务器 shell tomcat 脚本 o ...