芝能智芯出品
英特尔 Meteor Lake 处理器集成的 NPU 3720 是一款备受期待的机器学习加速器,以更低的功耗提供更高的性能,为各种人工智能应用带来新的可能性。当然评测表明 NPU 3720 并非完美无缺,存在一些局限性。
NPU 3720 基于 Movidius 的设计,并进行了定制以提高机器学习效率。
它拥有以下关键特性:
● MAC 阵列: NPU 3720 的核心是两个神经计算引擎 (NCE),每个引擎包含 256 个 MAC 单元。这些单元专为矩阵乘法运算而设计,这是机器学习工作负载中常见的操作。
● SHAVE DSP: 除了 MAC 阵列之外,NPU 3720 还拥有多个 SHAVE DSP 内核。这些内核用于处理无法映射到 MAC 阵列的机器学习步骤,例如激活函数和池化操作。
● 内存层次结构: NPU 3720 拥有 128 KB 的快速 SRAM 存储器,用于存储中间结果和指令。它还可访问系统内存,但带宽有限。
评测表明 NPU 3720 在 FP16 运算方面能够达到 9.5 TOPS 的峰值性能。然而,实际应用中的性能可能更低,具体取决于工作负载和软件优化。
● INT8 性能: NPU 3720 在 INT8 运算方面表现出色,这是机器学习中常用的低精度数据格式。在测试中,它能够以超过 1.35 TFLOPS 的速度执行 INT8 矩阵乘法。
● FP16 性能: NPU 3720 的 FP16 性能也令人印象深刻,能够以超过 4.7 TFLOPS 的速度执行 FP16 矩阵乘法。
● FP32 性能: NPU 3720 对 FP32 的支持有限,只支持基本的 INT8 和 FP16 到 FP32 的转换。
● 其他数据类型: NPU 3720 不支持 FP64 计算,这可能会限制其在某些科学和工程应用中的用途。
NPU 3720 的软件生态系统仍在发展中。英特尔提供了 OpenVINO 等工具,用于将机器学习模型转换为 NPU 可执行代码。然而,这些工具仍处于早期阶段,功能有限。
● 模型兼容性: 并非所有机器学习模型都可转换为 NPU 可执行代码。一些模型可能需要修改或重新设计才能利用 NPU 的硬件加速。
● 开发人员工具: NPU 开发人员工具仍处于早期阶段,缺乏一些关键功能,例如性能分析和调试工具。
NPU 3720 与其他机器学习加速器相比如何呢?
● GPU: 与独立 GPU 相比,NPU 3720 的性能较低,尤其是在处理复杂模型时。然而,NPU 3720 的功耗更低,这使其成为移动设备和其他功耗敏感型应用的更具吸引力的选择。
● 其他 NPU: NPU 3720 与其他 NPU,例如华为的 Ascend NPU 和寒武智芯的寒武 1 相比具有竞争力。然而,每个 NPU 都具有自己的优缺点,最佳选择取决于具体的应用和需求。
NPU 3720 代表了机器学习加速器发展的重要一步。随着软件和硬件的不断完善,NPU 在未来有可能发挥更大的作用。
● 软件改进: 英特尔和其他公司需要继续投资于 NPU 软件开发工具和生态系统,以使其更易于使用和更强大。
● 硬件创新: 未来版本的 NPU 可能会有更高的性能、更广泛的数据类型支持和更完善的内存层次结构。
● 应用扩展: NPU 的应用范围可能会扩展到机器学习之外,例如图像和视频处理、自然语言处理和计算机视觉。
小结
英特尔 Meteor Lake NPU 3720 是一项具有潜力的技术,但仍处于早期发展阶段。对于需要在低功耗下运行机器学习工作负载的用户来说,它可能是一个不错的选择。对于需要更高性能或更广泛数据类型支持的用户来说,独立 GPU 仍然是更好的选择。