芯东西(公众号:aichip001)
作者 |  ZeR0
编辑 |  漠影

在系统芯片开发过程中,软硬件协同设计愈发成为一个“基本功”。

相比完全倚仗芯片的硬件设计,与软件的适配协同开发能够更充分地挖掘算力,使芯片在实际应用中更好发挥出性能优势。

尤其是高速创新的人工智能(AI)领域,软件迭代的速度如此之快,固化的硬件设计难以满足蓬勃生长的算力需求,这促使满足未来需求的硬件与软件间的结合变得十分关键。

在这个话题上,一直探索将总部位于英国的知名半导体IP供应商Imagination Technologies相当有发言权。

从IP设计之初,Imagination便将能做“计算”的核放在一起做资源优化,目前其产品线覆盖GPU、AI、CPU三大领域,同时打造有IMG DNN SDK软件平台。其中GPU可多核扩展支持6TFLOPS的算力,AI加速器可支持到100TOPS乃至超过5000TOPS的算力。

近日,Imagination Technologies产品总监Rob Fisher在与芯东西进行的远程交流期间,从AI专用芯片IP硬件核设计的角度分享了更多的经验之谈。

勘破AI芯片软硬协同设计的难点与要点,对话Imagination产品总监▲Imagination Technologies产品总监Rob Fisher

Rob Fisher特别强调了一些设计要点:在软件设计方面,必须具备快速制作新架构原型并测试新架构的能力;在硬件设计方面,必须选择合适的加速粒度以兼顾灵活性和性能。

在他看来,软硬协同设计对于保证最灵活、最具适应性的解决方案至关重要。要获得最大的收益,应在IP核的设计阶段就开始软硬协同设计,而不是等到选择IP的时候才开始。“Imagination重视软硬协同设计,并将完整的编程模型视为IP开发的一部分。”Rob Fisher说。

从2015年起,Imagination就开始投入研发AI专用芯片IP核,从2NX、3NX到2020年推出的4NX,其产品一路迭代,性能也从0.5TOPS、12.5TOPS攀升至100TOPS甚至更高。在做AI硬件加速时,Imagination进行了软硬件一体配套设计,并与芯片公司合作探索如何从IP层面实现软硬件更深度的融合。

开发AI硬件和软件需要投入大量资源,来确保架构的可编程性与适应性足以满足未来的需求,同时实现高吞吐量以及低功耗、小面积和低带宽。

在这方面,Imagination已经积累了7年的AI加速器开发经验。Rob Fisher认为,没有足够的知识积累,很难开发出像Imagination PowerVR NNA这样的高性能IP。

他告诉芯东西,Imagination了解在某些情况下,标准的优化和工具流程无法充分发挥硬件的潜力或满足特定的部署限制(如带宽),此时可以进行进一步的分析和优化。Imagination针对特定的AI和计算工作负载进行了优化,例如在同时使用SIFT和计算机视觉算法与机器学习的案例中,Imagination团队经过分析后在PowerVR GPU上展示了业界领先的加速能力。

Imagination希望通过产业化的软件平台,将AI框架解析过来的工作通过DNN最终部署到合适的硬件平台。例如,Imagination的PowerVR GPU和PowerVR NNA,采用一体化的IMG DNN API的设计,使其客户可以很容易地使用同一套API,向上适配TensorFlow、Caffe、百度飞桨等业界主流框架,向下适配NNA only或GPU+NNA等不同的硬件方案。

看向未来,要实现硬件对更多AI框架及算法的适配与融合优化,Rob Fisher认为加速粒度将是实现软件优化和算子融合的关键

软硬一体已是未来AI发展的主流趋势。随着AI技术更加成熟并进入更广泛的行业应用中,业界已从分工独立的硬件算力驱动和算法创新驱动走向算法与硬件协同创新阶段。这将需要更多业界的软硬件企业增进合作,探索如何将芯片设计与软件形成更好的结合,以在更适合的落地场景中将落地部署的硬件性能发挥到最佳水平。