我想在 Android 上获得我的移动应用程序的最大性能。我想知道是否有人知道检查手机是否具有 FPU 的技巧。

经过一些研究,似乎在拥有 FPU 的单元上使用 FloatMath 类的速度较慢,所以我希望两全其美。

大多数较新的手机都有 FPU,但我希望获得设备所能提供的最佳性能。

最佳答案

它是一个 Linux 内核,至少默认的 Android 配置会挂载 procfs 。这意味着您可以查看 /proc/cpuinfo ,它在 ARM 系统上看起来像:

# cat/proc/cpuinfo
处理器:ARMv7 处理器版本 3 (v7l)
BogoMIPS:249.96
特点:swp 半拇指 fastmult vfp edsp NEON vfpv3
CPU 实现者:0x41
CPU架构:7
CPU变体:0x1
CPU部分:0xc08
CPU版本:3
[...]

如果“Features”行至少列​​出了 vfp ,则 ARM SoC 具有 FPU。

您应该能够通过 Dalvik/Java 接口(interface)读取 /proc/cpuinfo,就像普通文件一样,无需特权访问或任何需要。我不是 Java 程序员,因此将其作为练习留给读者。

10-08 18:26