在Android上检测FPU存在

gim*_*cpu 7 optimization mobile android fpu

我希望在Android上获得最高性能的移动应用程序.我想知道是否有人知道检查手机是否拥有FPU的技巧.

经过一些研究后,似乎FloatMath在拥有FPU的单位上使用类较慢,所以我想拥有两个世界中最好的.

大多数较新的手机都有FPU,但我希望获得该设备可以提供的最高性能.

Fra*_*kH. 9

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

# cat /proc/cpuinfo 
Processor       : ARMv7 Processor rev 3 (v7l)
BogoMIPS        : 249.96
Features        : swp half thumb fastmult vfp edsp neon vfpv3 
CPU implementer : 0x41
CPU architecture: 7
CPU variant     : 0x1
CPU part        : 0xc08
CPU revision    : 3
[ ... ]

如果" Features"行至少列​​出vfp,则ARM SoC具有FPU.

您应该能够/proc/cpuinfo通过Dalvik/Java接口读取,就像普通文件一样,没有特权访问或任何需要.我不是Java程序员,所以把它作为练习留给读者.