专栏算法工具链为什么地平线的工具链如此优秀

为什么地平线的工具链如此优秀

已解决
杨传义2020-04-18
1018
6

在介绍地平线工具链之前,我们先对芯片和工具链的关系做一个简单了解。

基本上所有芯片公司都会提供工具链作为芯片开发工具或者平台,尤其是AI芯片公司,都须提供训练框架或者浮点转定点工具,可以说芯片与工具链是互生共存的。

虽然大家都有工具链,但不同公司的工具链效果差别很大,主要原因就在于芯片公司一般不懂算法,所以他们生产的AI芯片多致力于算力的堆积,而忽略算法在芯片上的真实效率;而算法公司不懂芯片,也不会在芯片未上市前就专门做大量优化或提供建议,而上市后能做的优化也多集中在软件层面。
这在很多情况下就造成真实产品很难发挥出与芯片算力对等的效果。而且产品化过程中,一般需要引入业务、芯片、算法三方,甚至还需神经计算核IP团队四方公司与团队一起参与项目,沟通效率低下,有问题也可能相互推脱。还有一个风险是芯片周期长,就会出现芯片量产时已经落后算法更新2代以上了,终端产品推出不久就可能面临落后时代的风险。(算法在芯片上不是简单的调用乘加器,还有带宽、算子、结构上的特别要求)
而地平线集芯片与算法于一体,有着自己的独有优势:地平线在芯片设计时就有算法人员参与,甚至会参考还只在学术论文中的优秀算法或网络,等到芯片上市,这些表现优异的算法也开始逐渐流行。而且我们的算法模型在优化的过程中,也会引入芯片和硬件同事,以完全发挥硬件实力。

所以地平线有两个巨大的优势:

1. 地平线芯片上的定点模型拥有极高的算法精度,在某些算法上甚至可以超过浮点。 具体可见我们天工开物平台Model Zoo模块的介绍:https://developer.horizon.ai/resource
2. 越新的算法和网络,在地平线的芯片上运行效率越高,主要源于我们拥有极高的MAC利用率如下图的对比数据所示:
所以有朋友想开展嵌入式AI产品的想法,并开始做芯片选型时,在算力这个规格上不能只看算力数字,要实际跑算法(公版算法即可),看帧率和指标。

而要想训练出如上高效的嵌入式模型,从而建立自己的算法和业务壁垒,就需要用到我们的工具链。地平线工具链主要包括三部分:训练框架、编译器、部署API。其工作流如下:

接下来我们分模块介绍一下工具链的几个部分:

1. 训练框架:框架的功能是让客户可自定义训练模型,我们提供了充足的算法、网络、算子支持,也达到了极高的量化精度。
2. 编译器:编译器功能是将定点模型编译成芯片上运行的可执行文件。我们的编译器为Tensors计算做了极致优化,成倍的提升了模型在芯片上的运行速度;也为客户提供了仅依赖模型结构的性能分析工具,便于在开展训练前就确定性能基准,避免训练资源浪费。
3. 部署API,这部分是客户产品落地所必须的嵌入式API,包含系统软件、Bpu等的调度接口等。API可参考工具链文档:https://developer.horizon.ai/api/v1/static/fileData/aitoolchain/contents.html

除了已有的训练框架外,我们预期5月份中下旬发布浮点转定点工具。可以转换caffe和ONNX的浮点模型到能直接运行到芯片上的定点模型,使用者可以方便的迁移已经有的算法到地平线芯片上。敬请期待!

目前训练框架工具链对地平线的客户完全开放,整包链接:https://pan.horizon.ai/index.php/s/7PjWC6iJmsiLJSC?path=/Tensorflow 获取密码请邮件联系:forum-bd@horizon.ai。 如果有其他商务需求,也请联系此邮箱,我们会第一时间反馈。

欢迎大家咨询、指正。

算法工具链
+7
评论5
0/1000
  • zdi
    Lv.1

    你好,请问转换caffe和onnx的工具有发布吗?

    谢谢!

    2020-06-03
    0
    1
    • 杨传义回复zdi:
      有发布,请参考“资料下载”中的“天工开物 AI芯片工具链(AI Toolchain)”版块。 如有需要,请联系我们:forum-bd@horizon.ai
      2020-06-03
      0
  • andymacool
    Lv.1

    ?

    2020-04-21
    0
    0
  • Sumution
    Lv.1

    深入浅出,透彻清晰

    2020-06-03
    0
    0
  • linjinbin
    Lv.1

    看得让人心动?

    2020-08-22
    0
    0
  • 小文
    Lv.1

    test

    2023-09-25
    0
    0