Qualcomm 在移动通讯应用领域方面一直是业界领导厂商,但很多人不知道的是,这公司除移动通讯本业务外,也掌握了许多关键技术来帮助改善使用体验。
Qualcomm 是世界少数拥有自有 DSP 架构的公司,事实上,他也是目前硕果仅存,唯一一家采用自有 DSP 架构的移动通讯方案供应商。Hexagon DSP 在 Qualcomm 方案中,兼顾着基频讯号与多媒体处理的运算需求,从过去以来一直使用着自有架构 DSP,即便是基于标准 ARM 架构的 Snapdragon 810 亦是如此。
逐渐重视异质运算需求
虽然 Hexagon DSP 是 Qualcomm 过去在其移动通讯应用方案中一直存在的运算架构,但过去 CPU 架构强势主导市场行销与消费者使用观感的时代,Qualcomm 只选择对其 OEM / ODM 伙伴开放自有 DSP 的应用,协助其客户制造出具备独特运算能力的终端,然而随着 CPU 重要性的减弱,Qualcomm 重新把自有 DSP 拉到檯面上,不仅强调其自有 DSP 对应用加速的帮助,更开放一般开发人员存取其运算能力,协助业界熟悉高通运算架构,而随着 Qualcomm 加入 HSA 联盟,Hexagon DSP 更成为辅助高通打入异质运算领域的武器之一。
![Qualcomm Snapdragon 820的Hexagon 680 DSP性能有多强? Qualcomm Snapdragon 820的Hexagon 680 DSP性能有多强?](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9nby9hSFIwY0RvdkwzZDNkeTVtWVhOb1lXOTViM1V1Ym1WMEwzVnpaWEl2YW1OcmF5OXBiV0ZuWlM4eU1ERTFNRGd5T1M4eU1ERTFNRGd5T1RJd01ETXlOVEV4TWpVeE1TNXFjR2M9.jpg?w=700&webp=1)
Hexagon 680 DSP
不论在自有客製化架构,或者是标准 ARM 架构中,Qualcomm 都使用由 ARM 所提供,但经过微调的 NEON SIMD 运算单元,藉以相容几乎所有针对标准 ARM 架构的一般应用。然而 Qualcomm 调整过的 NEON 在多媒体运算性能上却未必能够表现出更优秀的性能,原因在于一般应用多仅针对标准 NEON 结构或运算逻辑最佳化,在具备更宽资料通道的 Qualcomm 版 NEON 上执行往往会水土不服。Qualcomm 自有 Hexagon DSP 拥有独立的快取、汇流排与暂存器设计,理论上效能远高于 NEON 运算单元,Qualcomm 也把 Hexagon DSP 当作 NEON 运算单元的补充,期望能透过平行运算,分担从不同感测器而来的 SIMD 指令运算需求。
为何 Qualcomm 要强调 DSP?
目前 GPGPU 已经蔚为潮流,ARM 与 AMD 也都强调 GPGPU 在异质运算中的重要性,Qualcomm 为何还坚持走 DSP 的路?其实 Qualcomm 认为,GPGPU 虽然在大量平行运算中有性能优势,但功耗相对较难控制,在移动通讯平台上恐怕会产生发热或电力消耗快速的问题,加上 Qualcomm 认为自有的 Hexagon DSP 架构可兼顾功耗与性能表现,作为 CPU 和 GPU 之间的补充,亦可让整个平台拥有更好的反应速度与运算效能。加上 Qualcomm 本身的 GPU 其实支持 GPGPU 运算,所以能在各种不同的情境之下满足消费者的运算需求。
强化的应用配置与性能表现
过去的 Hexagon DSP V3 版仅针对音效处理,比如说音场、抗噪及低功耗解码播放等,较少针对多媒体编解码或照相功能的辅助,后续的 V4/V5 版本则增加了与多媒体解码单元及照相功能的互动,除强化 DSP 的应用广度,也让原本会消耗大量运算效能的计算得以从 CPU 分摊出来。藉由与 Hexagon 680 DSP 的协同运算,在照相功能方面可以快速的进行画质调整、强化,或者是其他特效的即时运算,亦能协助进行视讯解码或编码运算。V5 版亦增加了对Sensor的支持。
![Qualcomm Snapdragon 820的Hexagon 680 DSP性能有多强? Qualcomm Snapdragon 820的Hexagon 680 DSP性能有多强?](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9nby9hSFIwY0RvdkwzZDNkeTVtWVhOb1lXOTViM1V1Ym1WMEwzVnpaWEl2YW1OcmF5OXBiV0ZuWlM4eU1ERTFNRGd5T1M4eU1ERTFNRGd5T1RJd01EUTVOekl3T1RjeU1DNXFjR2M9.jpg?w=700&webp=1)
至于最新的 Hexagon 680 与之前的 Hexagon V5版 相较之下,又有什么改善?Hexagon 680 DSP 主要增加 Hexagon Vector Extensions / HVX 扩充指令的支持,可针对包含 VR、AR、视讯编解码、后期特效处理等各种运算需求进行低功耗运算。另外从基本运算单元的差别来看,Hexagon 680 与前一版 Qualcomm 自有 DSP 架构相较之下,由每个主频周期可执行 3 道执行绪进步到可同时执行 4 道执行绪,每个执行绪同样包含了 4 个 1024 bit 超长指令(VLIW),且同样具备动态丢弃閒置指令的能力。理论上,在相同主频的条件下,可增加约 3 成的效能表现。不过为了功耗考量,Hexagon 680 主频较 810 的 Hexagon V56 低了 10% 左右,换算之下,Hexagon 680 平均性能约较前代增加了 3 成以上。
另外,从製程和主频设定换算,一般运算状态下,Hexagon 680 平均功耗约为前代架构的 5~6 成。因为 Hexagon 680 DSP 设计上可取代 NEON 来加速多媒体运算,与 NEON 计算单元相较之下,同样的运算需求使用 Hexagon 680 DSP 可带来理论上最多 3 倍的性能改善,且同时还能降低功耗表现。
![Qualcomm Snapdragon 820的Hexagon 680 DSP性能有多强? Qualcomm Snapdragon 820的Hexagon 680 DSP性能有多强?](https://image.shishitao.com:8440/aHR0cHM6Ly93d3cuaXRkYWFuLmNvbS9nby9hSFIwY0RvdkwzZDNkeTVtWVhOb1lXOTViM1V1Ym1WMEwzVnpaWEl2YW1OcmF5OXBiV0ZuWlM4eU1ERTFNRGd5T1M4eU1ERTFNRGd5T1RJd01EUTJNRE00TmpBek9DNXFjR2M9.jpg?w=700&webp=1)
qualcomm snapdragon 810
比较值得一提的是,过去 Snapdragon 810 分别在 AP 和 Modeom 区块各内建 1 组 Hexagon V56 DSP,Snapdragon 820 则是在这 2 组 Hexagon 680 DSP 之外,另外增加 1 组超低功耗 Hexagon 680 DSP。这个超低功耗 DSP 模组直接与各种感测器连接,除确保包括运动感测、三轴、陀螺仪、GPS 等感测器可在各种状况下发生作用,迅速回应使用者的操作需求,同时并确保系统功耗可以同时维持在相对低的水准,不需动用到 CPU 的运算能量,没错,其作用等同于 1 个 Sensor hub。
Qualcomm 版的 CUDA,但更少人用
Hexagon 680 DSP 不支持标准的 OpenCL,仅支持自家的封闭函式库,也就是说,一般应用开发者仍难以针对此 DSP 架构撰写应用程式。虽然这是为了保护自家的智能财产,但同时也相当程度限制了平台运算性能的发挥,Qualcomm 似乎仅愿意让一般应用开发者取用 GPGPU 的运算能量,DSP 区块仍保留给 OEM / ODM 选择是否采用或开启的弹性
http://www.fashaoyou.net/Article/1212/82711.html