0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

AMD开源Brotli-G压缩格式,可使用GPU加速Brotli压缩

OSC开源社区 来源:OSC开源社区 作者:OSC开源社区 2022-11-24 11:50 次阅读

AMDGPUOpen 团队公布了一个新的开源项目:Brotli-G,Brotli-G 基于 IETF 维护的完善的 Brotli 无损压缩算法标准( RFC7932),但可以使用 GPU 进一步增强 Brotli 压缩算法的性能和压缩比。

Brotli 压缩算法由 Google Research 开发,于 2013 年首次发布,开源规范于 2013 年至 2016 年间开发和推广。

Brotli 是 LZ77 压缩算法和霍夫曼编码(类似于 GZIP 和 Deflate)的组合,作为 GZIP 和 Deflate 算法的开源继承者,Brotli 具有相似的性能,但压缩比更好。

18208f78-6b2e-11ed-8abf-dac502259ad0.jpg

目前 Brotli 在 Web 应用程序和内容中被广泛采用,用于压缩 Web 应用程序资产,例如字体、javascript、图像等。

● 如今超过 95% 的网络浏览器都支持 Brotli 解压。

● 许多 Web 应用程序框架都支持 Brotli 编码(例如 NGINX 和 ASP.NET)。

● 一些 CDN 使用 Brotli 编码(例如 Azure 和 ImageKit)

Brotli-G 性能优化

Brotli-G对标准 Brotli 比特流格式的修改主要集中在:允许在 GPU 和多线程 CPU 上进行高效的数据并行解压缩,同时仍保持相对较高压缩率。主要的变化可概括为:

限制要压缩的块(页面)的大小,提供在 GPU 上使用多个计算单元 (CU) 的能力。

实施并行霍夫曼子流,提供使用 SIMD 处理的能力。

简化了比特流格式,最大限度地提高 GPU 性能。

目前 Brotli-G 解压缩算法已作为 “着色器 -shader” 程序(用微软的 HLSL高阶着色器语言编写)实现,可以在任何兼容 DirectX 的显卡上运行(但似乎不支持AMD 的 Radeon 显卡...)。在着色器中实现解压缩,可充分利用 GPU 硬件的巨大并行处理能力,以实现快速解压缩效果。

AMD 开源的是一个 Brotli-G SDK,包含用于 CPU 和 GPU 上的 CPU 压缩和解压缩的源代码。该 SDK 还包含 CLI 应用程序的源码,可用于测量 Brotli-G 编解码器的性能。

需要注意的一件事是,已经使用 Brotli 压缩的内容,无法使用 Brotli-G 解压缩器进行解压。如果要利用 Brotli-G,必须使用兼容 Brotli-G 的压缩器(也在 SDK 中提供)重新压缩该内容。

目前该 SDK 以基于 MIT 的 BCP 78 许可证(这是标准 Brotli 压缩算法的许可证)开源,可以在其 GitHub 存储库中找到:https://github.com/GPUOpen-LibrariesAndSDKs/brotli_g_sdk

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • amd
    amd
    +关注

    关注

    25

    文章

    5438

    浏览量

    133915
  • gpu
    gpu
    +关注

    关注

    28

    文章

    4700

    浏览量

    128673
  • 开源
    +关注

    关注

    3

    文章

    3243

    浏览量

    42378
  • 压缩算法
    +关注

    关注

    1

    文章

    21

    浏览量

    10488

原文标题:AMD开源Brotli-G压缩格式,可使用GPU加速Brotli压缩

文章出处:【微信号:OSC开源社区,微信公众号:OSC开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    在米尔电子MPSOC实现12G SDI视频采集H.265压缩SGMII万兆以太网推流

    视频编码、网络带宽、和视频传输的诸多因素。 近期“影视飓风”发布的视频《清晰度不如4年前!视频变糊是你的错觉吗?》因讨论视频平台降低码率和改变编码格式压缩视频画质,影响了内容表达。 4K视频清晰度
    发表于 11-01 16:56

    压缩算法的类型和应用

    压缩算法是一种通过减少数据量来节省存储空间或传输数据的技术。压缩算法可以分为两种类型:有损压缩和无损压缩
    的头像 发表于 10-21 13:50 182次阅读

    在米尔电子MPSOC实现12G SDI视频采集H.265压缩SGMII万兆以太网推流

    音视频广播领域提供了高性能、低功耗、实时压缩压缩、多视频流处理、灵活性、硬件加速、广泛格式支持、多媒体框架集成、优化的功耗管理和高速互联外设等多重优势,使其成为该领域理想的解决方案。
    发表于 10-14 17:42

    如何使用gzip压缩和解压缩技术

    Nginx是一款高性能的Web服务器,它也能够充当反向代理服务器和负载均衡器。在Web应用开发中,优化网站速度是一个非常重要的工作。使用gzip压缩和解压缩技术,可以有效减小传输文件的大小,提升网站的访问速度。
    的头像 发表于 09-29 15:57 313次阅读

    notepad++安装的压缩

    压缩文件为notepad++的压缩安装包,可以直接解压之后使用
    发表于 07-01 15:07 6次下载

    压缩空气储能工作原理 压缩空气储能的优缺点

    压缩空气储能(CAES)是一种利用空气的压缩和膨胀来存储和释放能量的技术。
    的头像 发表于 04-25 15:18 3845次阅读

    FPGA压缩算法有哪些

    在图像压缩算法中可以采用哈夫曼编码的方式对编码冗余的信息进行压缩,可以采用预测的方式来减少像素间冗余,可以采用量化的方式完成心理视觉冗余信息的去除
    的头像 发表于 04-15 11:48 567次阅读
    FPGA<b class='flag-5'>压缩</b>算法有哪些

    Python压缩和解压缩实现代码分享

    压缩和解压缩是日常常用的操作,不管是windows上图形界面的操作,还是linux上用命令来进行压缩压缩,总的而言都还是比较方便的。
    的头像 发表于 04-11 11:28 992次阅读

    基于门控线性网络(GLN)的高压缩比无损医学图像压缩算法

    实现基于门控线性网络(GLN)的高压缩比无损医学图像压缩算法,以提高医学图像存储和分发系统的效率。与“传统”的基于上下文的数据压缩算法相比,基于GLN的系统使用一组不同的上下文模型。
    的头像 发表于 04-08 10:29 611次阅读
    基于门控线性网络(GLN)的高<b class='flag-5'>压缩</b>比无损医学图像<b class='flag-5'>压缩</b>算法

    高性能无损数据解压缩FPGA IP,LZO无损数据解压缩IP

    LZOAccel-D是一个无损数据解压缩引擎的FPGA硬件实现,兼容LZO 2.10标准。 Core接收压缩的输入数据块,产生解压缩后的数据块。Core分析数据块的头和尾,检查输入数据块的错误
    的头像 发表于 02-25 09:59 283次阅读
    高性能无损数据解<b class='flag-5'>压缩</b>FPGA IP,LZO无损数据解<b class='flag-5'>压缩</b>IP

    离心压缩机的工作原理是什么

    离心压缩机是一种常见的压缩机类型,广泛应用于工业和商业领域。它通过旋转运动将气体抽入,增加其压力并将其排出。离心压缩机具有高效、可靠的特点,适用于各种气体的压缩和处理。下面将详细介绍离
    的头像 发表于 02-14 17:12 7372次阅读

    螺杆压缩机工作原理 螺杆压缩机的工作循环可分为

    螺杆压缩机是一种通过螺杆运动来压缩气体的机械设备。它由主螺杆和副螺杆组成,两者通过齿轮传动保持一定的相对运动轨迹。在工作过程中,气体被吸入螺杆压缩机的吸气口,然后沿着螺杆的螺旋槽被压缩
    的头像 发表于 02-04 10:19 1069次阅读

    压缩机的类型和区别

    压缩机的类型和区别。 一、离心压缩机 离心压缩机是一种将气体以离心力的形式压缩的机械设备。它具有以下特点: 1. 工作原理:离心压缩机通过高
    的头像 发表于 02-01 14:36 2909次阅读

    高性能无损数据压缩FPGA IP,LZO无损数据压缩IP

    LZOAccel-C是一个无损数据压缩引擎的FPGA硬件实现,兼容LZO 2.10标准。 Core接收未压缩的输入数据块,产生压缩后的数据块。Core使用合适的头和尾封装了压缩后的数
    的头像 发表于 01-25 13:39 442次阅读
    高性能无损数据<b class='flag-5'>压缩</b>FPGA IP,LZO无损数据<b class='flag-5'>压缩</b>IP

    如何选择压缩机?

    如何选择压缩机? 选择压缩机是一个相当复杂的过程,需要综合考虑多个因素。本文将详细介绍如何选择压缩机,包括了所需的基本知识、市场上常见的压缩机类型、关键的选择因素和技术参数等。 一、基
    的头像 发表于 12-11 11:26 1065次阅读