检查设备是否有神经引擎

Check if device has Neural Engine

除了推断设备型号和版本外,是否有 API 可以知道当前设备是否具有神经引擎? (苹果平台)。

目的是在设备没有此类硬件加速的情况下默认禁用一些依赖于 CoreML 模型的非关键功能。

我找不到明确的 API,但使用 Instruments 您可以查看模型在 ANE 或 Metal(即在 GPU 上)上是否 运行。我想在 运行 时间你可以使用 Objective C 和一些方法 swizzling 来查看那些 ANE 类 (使用符号断点,它们都以 ANE 为前缀)是否被调用,但是你' d 需要先通过它来找出答案。

MLModelConfiguration 有一个 computeUnits 属性 允许你特别告诉模型不要 运行 在 ANE 上,但不是相反,系统决定是否使用ANE

这里有一些可能有用的附加信息: https://github.com/hollance/neural-engine