许多智能设备和物联网设备都是由某种形式的人工智能(AI)驱动的——无论是语音助理、面部识别摄像头,还是电脑。这些设备需要采用某种技术为它们进行的数据处理提供支持。有些设备需要在云平台的大型数据中心处理数据,而也有一些设备将通过本身的人工智能芯片进行处理。
GPU是不能单独使用的,它只是处理大数据计算时的能手,必须由CPU进行调用,下达指令才能工作。
FPGA适用于多指令,单数据流的分析,与GPU相反,因此常用于预测阶段,如云端。FPGA是用硬件实现软件算法,因此在实现复杂算法方面有一定的难度,缺点是价格比较高。与 GPU 不同,FPGA 同时拥有硬件流水线并行和数据并行处理能力,适用于以硬件流水线方式处理一条数据,且整数运算性能更高,因此常用于深度学习算法中的推断阶段。不过FPGA 通过硬件的配置实现软件算法,因此在实现复杂算法方面有一定的难度。
将FPGA 和 CPU 对比可以发现两个特点,一是 FPGA 没有内存和控制所带来的存储和读取部 分速度更快,二是 FPGA 没有读取指令操作,所以功耗更低。劣势是价格比较高、编程复杂、整体运算能力不是很高。
定制的特性有助于提高 ASIC 的性能功耗比,缺点是电路设计需要定制,相对开发周期长,功能难以扩展。但在功耗、可靠性、集成度等方面都有优势,尤其在要求高性能、低功耗的移动应用端体现明显。谷歌的 TPU、 寒武纪的 GPU,地平线的 BPU都属于 ASIC芯片。谷歌的 TPU比 CPU和 GPU的方案快 30 至 80 倍,与 CPU和 GPU相比,TPU把控制电路进行了简化,因此减少了芯片的面积,降低了功耗。
有人说,ASIC是人工智能芯片的一个主要发展方向,但真正的人工智能芯片未来发展的方向是类脑芯片。