Archivo

Entradas Etiquetadas ‘threads’

Scripting: Obtener número de procesadores

Jueves, 8 de octubre de 2009 Sin comentarios

terminal-icon

Última actualización: 20/09/2011

Voy a empezar hoy una nueva categoría denominada Scripting para introducir algunas líneas de comandos o scripts que pueden ser útiles para realizar algunas de las tareas que más solemos necesitar la gente que trabajamos a menudo con los bash scripts.

Aquí os dejo una sencilla línea que debería funcionar en cualquier distribución GNU/Linux. Simplemente busca la palabra cores en el fichero /proc/cpuinfo e imprime el cuarto campo de dicha línea. Después de esto ejecuto el comando exit para terminar la ejecución del programa, ya que si tenemos un procesador con varios núcleos, sin el comando exit nos aparecería el número de núcleos tantas veces como núcleos tengamos.

awk '/cores/ {print " ", $4; exit} ' /proc/cpuinfo

Recuerda si quieres asignar el número de cores a una variable tendras que escribir una línea parecida a la siguiente:

THREADS=`awk '/cores/ {print " ", $4; exit} ' /proc/cpuinfo`

En caso de que dispongamos de uno de los nuevos procesadores de intel (iCore 7, Xeon o similares) que cuentan con la característica de poder ejecutar dos hilos por núcleo, en el fichero /proc/cpuinfo nos mostrará que disponemos de 8 procesadores aunque el campo cores seguirá mostrando 4. Para trabajar con los 8 hilos en vez de con 4 podemos utilizar el siguiente comando:

THREADS=$((`awk '/processor/ {print " ", $3;} ' /proc/cpuinfo | tail -n 1` + 1))
GD Star Rating
loading...
Share