¿Cómo descubrir la cantidad de núcleos *lógicos* en Mac OS X?
¿Cómo puedes saber, desde la línea de comando, cuántos núcleos hay en la máquina cuando ejecutas Mac OS X? En Linux, uso:
x=$(awk '/^processor/ {++n} END {print n+1}' /proc/cpuinfo)
No es perfecto, pero está cerca. Esto está destinado a ser enviado a make
, por lo que da un resultado 1 mayor que el número real. Y sé que el código anterior se puede escribir de forma más densa en Perl o se puede escribir usando grep, wc y cut, pero decidí que lo anterior era un buen equilibrio entre concisión y legibilidad.
EDICIÓN MUY TARDE: Solo para aclarar: pregunto cuántos núcleos lógicos hay disponibles, porque esto corresponde con cuántos trabajos simultáneos quiero make
generar. La respuesta de jkp, refinada por Chris Lloyd, era exactamente lo que necesitaba. YMMV.
Puedes hacer esto usando la utilidad sysctl :
sysctl -n hw.ncpu
Aún más fácil:
sysctl -n hw.ncpu