在提高AI安防芯片性能,加强算力的同时,芯片中颇为关键的其实并不是单纯提升算力,如果不进行存储优化,那么芯片实际提供的计算力会大大降低。这也是制约AI安防芯片规模化应用的问题之一。要突破AI芯片的瓶颈,并不能只是简单的增加计算算力,而是一定要把数据存储管理做好。
传统芯片中,采用的是冯·诺伊曼架构,计算模块和存储单元是分开的,"内存墙"问题很严重。而AI依赖的算法是一个庞大和复杂的网络,有很多参数要存储,也需要完成大量的计算,需要巨大存储容量,高带宽、低延时的访存能力。很多AI初创芯片公司,实际上都在努力解决这个问题。
而我们的思考是,不能采取通常的先有计算指令然后提供数据的方式,应该从存储子系统的优化入手,让数据在存储之间的搬移过程之中完成计算。
这也可以叫做"基于memory的计算",而不是"基于计算的memory"。
当前芯片领域对于AI算法的关注还较多,针对AI的结构改进尝试还比较少。之后,memory与computing结合的尝试,我相信会是一个好的方向。
安防芯片同质化问题严重
对于AI安防芯片来说,"芯片+算法"的整合是最重要的。而对于具体一款芯片,最主要的指标应该是价格和稳定性。芯片是"硬"的,算法是"软"的,如何能将两者更好的结合起来,这就需要加强芯片对底层运算加速算法的适应性。现有芯片的问题,从技术角度来说,对前端的AI芯片算力的要求,对存储问题的解决,都很重要,都需要靠算法和芯片架构一起来改善,比如说现在的算法就还比较耗带宽。再具体应用上,AI安防芯片在安防摄像头中作为协处理器,目前已经被主控芯片集成了,所以单纯提供AI加速器并不占优势。而开发编解码能力、加密及AI能力三合一的芯片,为摄像头提供安全加密则是重点所在。这也是安防相对于其他芯片厂商不同的一点。从行业角度来说,现有AI芯片在安防行业应用落地上的主要问题,其实是同质化。很多AI芯片厂商产出的芯片并没有太大差别,一方面很多芯片达不到现有安防行业对前端AI芯片的要求,一方面又容易陷入芯片同质化竞争。现在的安防芯片格局下,其实已经存在垄断的生态,有大的行业玩家存在,那么做AI安防芯片如何找到自己的价值点,并做到差异化还是最难的。
芯片成本问题有待突破
在智能安防监控领域,芯片是硬件设备中成本占比高的零组件之一,也是安防视频监控设备的核心部件,通过前端摄像机内置人工智能芯片,可实时分析视频内容,检测对象,识别人、车属性信息,并通过网络传递到后端人工智能的中心数据库进行存储。
目前,安防视频设备中所需要的处理器芯片主要包括网络摄像机中的SoC芯片、后端DVR/NVR中的SoC芯片以及深度学习算法、加速器芯片以及前端模拟摄像机中的ISP芯片四种类型。目前,高性能的深度学习算法加速器芯片仍由国外芯片厂商提供,但其余三类处理器芯片已实现了较大程度的国产化替代。安防领域最主流的深度学习芯片方案是GPU,但GPU存在成本、效率、功耗等瓶颈。
当前在安防智能化进程中,算法层面已经接近成熟,而在芯片成本上还存在一些问题。为了实现智能化的功能(即运行深度学习算法),安防监控系统的前端和后端设备中需要加入英伟达或是英特尔等国际大厂所设计的GPU、FPGA或者ASIC加速芯片,与原有的承担图像处理和编解码功能的主处理器芯片一起构成双芯片方案,而采用这些芯片一般要为安防监控设备新增高额成本(2017年仅前端摄像机中采用的AI加速器芯片的成本就高达上百美元),因此导致智能化设备的成本普遍偏高,在很大程度上影响了智能化的大面积应用。
AI芯片的易用性有待提升
现在的安防市场上,已经出现了很多前端的AI加速器,但实际它们在应用上,还存在一些问题。
第一是价格太高。第二是可编程性不足。原先的通用芯片CPU很容易能实现编程,但AI加速模块中并没有指令集,无法编程,需要手工去调整。
在安防领域也是一样,厂商普遍反映的,不是AI芯片的性能,而是无论AI初创企业,还是传统大厂设计的加速器都很复杂,AI加速器很难被用起来。
一般来说,通用芯片难以负荷对计算的高要求,AI专用芯片则在可编程性、灵活性上有所欠缺。目前应用较多的集成度高的Soc,将不同计算架构芯片集成在一起,需要多套编程程序,运行就容易带来问题。这也是安防芯片厂商们,尤其是在安防前端应用上面临的难题。
而业内目前看好的一种方式,就是将不同的芯片架构结合在一起,这就是"异构计算"。
异构计算的长处在于,能实现比较好的适应性和灵活性,在通用性和专用性上达成一个折衷。既能高效的处理数据,又能相对保证算法的及时更新和迭代。这也是我们在探索的一个方向。
现在在安防、自动驾驶等这些边缘端的市场,对芯片的综合要求非常高。芯片需要处理的数据量很大,同时对于性能、性价比、性能功耗比要求也很高。