异构计算:架构与技术

人工智能

636人已加入

描述


如果您希望创建优秀的移动体验,那么,优化就不是可有可无的事情,而是关键之举。它可以帮助您将好的想法实现得更加出彩。在上一篇“使用QDN异构计算工具开发项目”文章中,我们讨论了异构计算的概念,以及如何通过将计算任务安排给最适合的处理器,从而帮助您充分地利用移动硬件。异构计算旨在帮助您实现更好的应用性能,同时改善发热量,提高电源效率。


但是,不是所有能够进行异构计算的系统都是一脉相承的,因此了解其中的原因十分重要。异构计算既是计算技术也是硬件架构。为了获得更多好处,您最好从头开始,利用异构计算架构硬件和便于执行异构计算的软件栈。它结合了专门构建的硬件和软件栈,可以在更大的系统抽象框架内提供精度控制,从而深度优化异构计算。


Qualcomm®Snapdragon™移动平台就是根据这些原则而设计的。从微架构开始——在平台电路中做出选择,包括如何针对高性能设计各个处理器,如何优化处理器之间的计算路径。让我们来看看Snapdragon移动平台的主要组件及其设计中的微架构考量:


Kryo 280设计用于处理复杂的工作负载,如网络浏览和游戏人工智能,拥有独立高效和高性能核心集群的八核处理器。在正常运行期间,高效率核心运行大多数任务,而在需要更高效能的时候激活高性能核心。


Hexagon DSP采用Hexagon宽向量扩展(HVX),在需要大量矢量数据处理的应用中表现出色,例如用于虚拟现实的6自由度(或自由度)头部运动跟踪、图像处理和神经网络计算。凭借1024位指令字功能,并列执行DSP内部控制代码处理器和计算代码处理器,Hexagon可以突破性能瓶颈,而不会耗尽系统电源。


Adreno GPU非常适合需要大量并行数字处理(如3D图形渲染和摄像机图像防抖动)的繁重运算工作负载,较上一代产品实现了更高的电源效率,性能提升40%。与前代产品相比,Adreno GPU 图形渲染速度提升高达25%,显示颜色多达60倍,拥有逼真的视觉效果,并可以实现令人惊叹的视觉显示功能,如实时拼接4K 360视频。


微架构设计中的异构计算


除了各个处理器性能提升之外,Snapdragon移动平台还可以优化处理器的协同使用。例如,Hexagon DSP可以通过直接从传感器将数据传输到DSP缓存,绕过DDR存储器和关联数据乱序CPU周期。同样,Adreno GPU支持64位虚拟寻址,允许共享虚拟内存(SVM)和与Kryo CPU的高效协同处理。这些只是Snapdragon移动平台的两个微架构设计方案,仅凭这些就让Snapdragon移动平台站在了异构计算的前沿。


软件


正如我们在文章开头指出的那样,异构计算也是一种技术。为了真正支持异构计算,需要一个软件栈,为开发人员提供抽象化和控制方法,以便根据需求通过硬件来优化他们的应用程序。


为进行DSP或GPU异构计算编程,最大限度地发挥其性能,开发人员可以分别使用Qualcomm Hexagon SDK和Qualcomm Adreno SDK。利用这些SDK打开控件工具箱,可以精确操纵数据和计算资源。


对于系统级异构计算控制,Qualcomm Symphony系统管理器SDK提供了软件工具,可以利用Snapdragon移动平台实现更佳性能和更低功耗。Symphony可以根据不同的配置管理整个平台,选择最有效率和最有效果的处理器和专用核心,尽快完成工作,同时降低功耗。


如何利用Qualcomm开发者网络工具将异构计算技术付诸于实施



利用异构计算微架构和软件工具,使用Snapdragon移动平台为您的应用程序获得最佳性能。


Snapdragon移动平台的微架构、软件开发套件和高级框架层层叠加,使开发人员可以最大程度地控制应用程序的性能和功耗。专为异构计算打造的硬件和允许使用异构计算技术的软件相结合,成为获得出色用户体验的关键。


作为一名开发人员,不管您是之前一直编写按顺序执行的代码,现在有意了解如何将更多工作安排到其他处理器,还是您已经掌握了异构计算的知识,希望更加有效地利用——也许希望精确控制工作负载的动态分配——都可以访问QDN,获取提升异构计算技能的资源。




更多Qualcomm开发内容请详见:Qualcomm开发者社区。


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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分