NPU(神经网络处理器)是一种专门为处理神经网络而设计的芯片,采用“数据驱动并行计算”的架构,特别擅长处理视频、图像类的海量多媒体数据。
与通用处理器(如CPU和GPU)不同,NPU的设计是针对神经网络的,因此可以更高效地处理神经网络的计算。通用处理器考虑到计算的通用性,提升的计算能力大部分不能直接转化为神经网络处理能力的提升,比如没有针对MAC运算做专门的提升。
NPU硬件架构的演进,其总体特性可以归结如下:
1、软件定义架构:当前行业云化和数字化推动软件架构从单体应用架构 - 垂直应用架构 - 分布式架构 - SOA 架构 - 微服务架构的演变。
NPU的概念、架构和实例可以从以下三个方面进行讨论:
1、概念:NPU是一种专门为处理神经网络而设计的芯片,采用“数据驱动并行计算”的架构,能够更高效地进行神经网络的计算。
2、架构:NPU的架构是数据驱动并行计算,采用专门的模块来进行神经网络的计算,如乘加模块、激活函数模块、二维数据运算模块和解压缩模块等。
3、实例:寒武纪是 NPU 领域的典型代表之一,其芯片采用 DianNaoYu 指令,能够直接面对大规模神经元和突触的处理,一条指令即可完成一组神经元的处理,并对神经元和突触数据在芯片上的传输提供了一系列专门的支持。
NPU的发展趋势是从定制化到通用化。在过去,NPU主要采用ASIC技术进行定制化设计,以适应不同的应用场景。近年来,随着人工智能技术的普及和发展,NPU开始向通用化方向发展,以适应更广泛的应用需求。例如,华为发布的DaVinci NPU就是一种通用的NPU,支持多种不同的神经网络架构。
如有侵权请及时联系我们处理,转载请注明出处来自
推荐文章