gpt4 book ai didi

java - Java 代码如何检查浮点寄存器的数量?

转载 作者:行者123 更新时间:2023-11-30 11:25:27 26 4
gpt4 key购买 nike

我们有一个内置两个不同版本的本地库(完整的游戏引擎和游戏代码)。一个版本支持带有 32 个浮点寄存器和 Neon SIMD 指令的 armeabi-v7a,另一个版本支持带有 16 个浮点寄存器的 armeabi-v7a(用于例如 Tegra 2 设备),因此不使用 Neon SIMD 指令,因为那样不会工作。

当我们的游戏开始时,我们在 Java 领域进行一些设置,然后加载正确的库。现在,我如何找出要加载的库?一个解决方案是添加另一个 native 库,除了上面提到的两个,它只有一种方法来调用 JNI 以使用 NDK 检查硬件支持......但是肯定有一种方法可以从 Java 中检查它?

我尝试打印在 android.os.Build 类中找到的所有内容并得到这些但我看不到在这里使用什么:

BOARD: EeePad
BOOTLOADER: unknown
BRAND: asus
CPU_ABI: armeabi-v7a
CPU_ABI2: armeabi
DEVICE: TF101
DISPLAY: IML74K.WW_epad-9.2.1.27-20120615
FINGERPRINT: asus/WW_epad/TF101:4.0.3/IML74K/WW_epad-9.2.1.27-20120615:user/release-keys
HARDWARE: ventana
HOST: Mars
ID: IML74K
MANUFACTURER: asus
MODEL: Transformer TF101
PRODUCT: WW_epad
RADIO: unknown
SERIAL: 037c708543204317
TAGS: release-keys
TYPE: user
USER: unknown

最佳答案

你可以尝试阅读/proc/cpuinfo ,其中应包含一行 Features : 告诉您您所使用的核心的功能。

例如在我的 Xperia Z1 上它显示:

Features    : swp half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt

从 Android/Java 层处理该行的内容应该很容易..

这也是 NDK 在您调用 android_getCpuFeatures() 时所做的事情.

关于java - Java 代码如何检查浮点寄存器的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20280622/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com