Skip to content
Advertisement

Detecting number of CPU cores on Android from native code

I’m using sysconf( _SC_NPROCESSORS_ONLN ) (which, I believe, is the recommended way) to get the number of CPU cores. It works fine or Mac and Linux, but on my 4-core Android tablet it returns 2. How can I get the actual number of cores on Android from native code (without using JNI to call Java Android API)?

Advertisement

Answer

Neither sysconf( _SC_NPROCESSORS_ONLN ) nor sysconf( _SC_NPROCESSORS_CONF ) works, but android_getCpuCount() from cpufeatures NDK library works correctly.

User contributions licensed under: CC BY-SA
3 People found this is helpful
Advertisement