“一次编写,运行各端”,高通重磅发布 AI 软件栈!

“一次编写,运行各端”,高通重磅发布 AI 软件栈!
文章图片
整理|苏宓出品|CSDN(ID:CSDNnews)“一次编程 , 到处运行”的这个梦想 , 我们从编程语言Java讲到了跨平台工具Flutter , 又探究到了操作系统HarmonyOS和Fuchsia , 如今放眼逐渐走上规模化的AI领域 , 又是否有一套这样的方案 , 能够将所有智能网联边缘设备串起来?
6月22日 , 高通宣布推出一套全新AI软件栈(QualcommAIStack) , 旨在帮助开发者和企业实现“一次开发 , 各端运行”的愿景 。 该软件栈是面向OEM厂商和开发者的一套完整的AI解决方案 , 这也是高通首次通过单一的AI软件组合 , 实现跨高通技术广泛产品组合和层级间的自由迁移 。
覆盖硬件、软件和工具三大维度 , 高通AI软件栈发布!
如今数字化经济时代的到来 , 开发者所使用的底层工具在潜移默化间发生了巨大的改变 , 传统的一些跨平台工具不足以支撑整个领域的迭代 。
之所以开发这套软件栈 , 高通技术公司产品管理副总裁ZiadAsghar在接受CSDN采访时表示 , 原因很简单 。 “从外部来看 , 很多合作伙伴的产品不仅会在云端运行 , 也会在边缘侧运行 。 对于一些投入了大量工作来进行开发的模型 , 我们希望能确保将这些模型的作用发挥到极致 , 让其适用于不同类型的产品 , 而这显然可以带来巨大优势 。 对于高通内部而言 , 推出高通AI软件栈的出发点其实很简单 , 那就是让我们的开发工作变得更加轻松、简单 。 ”
具体来看 , 围绕AI技术 , 当市场不断地从移动领域向其他领域拓展时 , 诸多企业也正面临着诸多的挑战 。 譬如 , 过去火爆的智能手机应用开发相比当下物联网、汽车业务领域存在诸多差异 , 在不同场景下 , 功耗需求分析、模型类型、模型部署方式不同 , 不同业务对于准确性、功耗以及时延等方面的平衡要求也各不相同 。 此外 , 不同业务领域所使用的AI模型和神经网络模型也不同 。
在软硬一体的趋势下 , 今天 , 高通用AI软件栈这款方案交上了一份答卷 。 根据官方介绍 , 高通AI软件栈主要包括三大关键组成部分:硬件、软件和工具 。
在硬件上 , 我们很惊喜地看见 , 这套方案几乎能够在所有高通技术支持的终端产品上运行 , 覆盖了广泛的智能网联边缘产品 , 包括智能手机、汽车、XR、计算、物联网和云平台 , 以此实现在某一业务线的投入能够轻松扩展到其他不同领域中 。
从下图中可以清晰地看出 , 由底层向前端开发的过程中 , 高通AI软件栈还支持不同产品使用的不同操作系统 , 包括Android、Windows、Linux以及面向网联汽车的QNX等 。 在系统软件层面 , 该方案能够完整支持系统接口、加速器驱动、仿真支持等 。
“一次编写,运行各端”,高通重磅发布 AI 软件栈!
文章图片
在更上一层的开发者库与服务层面 , 高通AI软件栈还支持数学库、编译器和虚拟平台 , 以及分析器和调试器 , 它可以帮助开发者知晓开发过程中使用了哪部分神经网络处理 , 这部分神经网络处理使用的是哪种模型 , 以及在硬件端应该采用怎样的权重进行分析 。
此外 , 该方案还能够支持编程语言和核心库 。 前面提到的编译器 , 它可以针对特定内容进行定制化处理 , 用Python只要几行代码就可以完成更多工作 , 为开发者提供很多便利 。
除了以上 , 这套AI软件栈方案还集成了高通在AI领域十余年来的研发成果 , 如支持高通AI模型增效工具包(AIMET) , 它提供模型量化和模型压缩技术 , 能够进行量化感知训练(QuantizationAwareTraining)和无数据训练 , 将浮点运算模型转化为整数运算模型 , 比如将32位浮点模型转换为8位整数模型 , 使模型能效提升达4倍之多;其也提供了开源的AI模型增效工具包模型库 , 方便业界开发者可以自行评估模型的能效和准确性 , 找到最适合的方案;同时 , 高通AI软件栈还提供神经网络架构搜索(NAS)能力 , 保障低时延和高精度AI计算 , 同时确保低内存和高能效 。