首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Hexagon DSP 发布SDK,打造全新神经网络库

将推理、场景分类、图像处理和视频回放增强之类的工作负载放到边缘设备(如智能手机)的CPU和GPU进行处理,会耗尽运行周期并缩短电池使用寿命。DSP编程越方便,您的应用就能更快地以更高性能和更低功耗运行类似的工作负载。

如果您是嵌入式开发者,会发现工具包包含了各种常用的编程工具。如果您是移动应用开发者,也会找到顺利过渡到DSP编程所需的一切。坦白说,这些工具对部分人员来说可能觉得难以应付,但其实大可不必有这种想法。

本文将一一介绍SDK中包含的更高可用性方法。

1. 不用从头开始DSP编程。为您提供了大量的示例代码。

为显示我们对可用性的认真态度,我们添加了SDK示例代码和文档。您可以找到Hexagon Vector eXtensions(HVX)基准示例代码,和在Hexagon上使用Halide的示例代码。另外,还更新了入门指南和分析器、模拟器和调试器文档。我们制作了QuRT(运行在Hexagon上的实时操作系统)和DSP Compute用户指南,并更新了HVX上下文保存/恢复功能。

2. 不用重写C++算法。已经在DSP上提供了相关支持。

很多开发者受到高性能和低功耗的双重诱惑,而从嵌入式领域转向DSP编程。之前他们花了多年时间完善运行在CPU上的C或C++算法,例如低光视频捕捉、图像稳定或卷积神经网络。如果不能确定是否能够实现承诺得好处,不会有多少人愿意再重新为DSP写代码并进行优化。

从去年1月份开始,我们提供了一个编译器和库,利用Hexagon SDK在DSP编程时使用C++语言。现在,在SDK 3.3.2中,我们更新了编译器工具链,允许在Hexagon DSP上执行以C++ 11/14编写的框架和算法。

这就意味着无需重新编写这些算法,就可以直接为DSP重新编译,并在Hexagon上运行。这是第一个巨大的进步,您会看到性能提升和耗能减少。大多数情况下,我们希望您作进一步优化。

3. 不用编写自己的编程工具。已经提供了编程工具。

Hexagon包含DSP逻辑以及类似于CPU的功能和特性,因此可以将其视为嵌入式处理器。在Hexagon SDK 3.3.2中,我们补充了用于编写、调试和分析的工具集,确保您的应用从底层硬件中获得最大收益:

•完整的工具箱——在SDK中,您可以找到完整的LLVM工具链(编译器、链接器、汇编器)、诊断日志记录、性能监视器、动态链接器和加载器以及支持协同仿真和虚拟平台的仿真器。

•调试器——我们增加了LLDB支持,意味着能更好地支持C和C++代码。现在,当您通过USB连接开发工作站和参考板或设备时,可以在IDE中执行常见的调试操作,例如单步执行调试代码,使用断点,检查寄存器或内存内容。

•IDE插件——SDK包含Eclipse IDE插件,以便更好地与开发环境集成。

•Profiler——在DSP分析器sysMon中,我们完善并允许您访问相关功能,方便您更深入地了解算法性能。为帮助您了解代码在Hexagon上的执行情况,sysMon收集并显示性能、缓存和其他相关指标。

有了这一功能强大的补充,您会发现SDK更加易用。

4. 不用构建自己的图像处理语言。为您提供了Halide工具。

如果您开发相机和图像项目,可能听说过或使用过Halide,实现高性能视觉和成像算法。我们认为Halide和Hexagon是绝佳搭配,所以我们联合Google一起为HVX构建了一个Halide工具集。以下是我们为您提供的工具:

•Halide编译器——作为Hexagon SDK 3.3.2和Hexagon LLVM工具集的一部分,Halide工具集提供了一个针对Hexagon DSP和HVX的Halide编译器。这意味着,如果您熟悉C++语言结构,就不需要深入了解底层处理器架构,就可以开始编写Halide程序。相反,您可以把精力集中在从DSP为图像算法获得尽可能多的性能。

•Halide运行环境——利用此运行环境,您可以通过添加一个简单的.hexagon()指令,轻松地将内核函数透明分派到Hexagon。这在异构计算中十分方便。

•Halide简洁性——我们自己在Qualcomm骁龙835和845移动平台设备上进行的图像处理测试中,首先从一个大约有175行汇编代码的高效算法开始。然后把它重写成一个C例程,大约有100行代码,性能略有下降。最后,我们使用Halide重写,不到二十几行代码,获得和汇编代码相同的性能。 当然了实现情况因人而异,但如果您喜欢编码紧凑,Halide也许是您的菜。

5. 不用编写自己的神经网络库。为您提供了一个。

越来越多的人谈论设备端处理如何给AI应用带来优势,以及如何在云端训练神经网络模型,然后在设备端运行推理。大多数公司都试图在CPU或GPU上优化AI处理,但在 Qualcomm Technologies,Inc.(QTI) ,过去数年时间我们一直在对DSP上的AI处理进行优化。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180121B048FN00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券