2011-07-12 17 views
5

Estoy usando la herramienta de conjunto de tareas para establecer la afinidad de CPU para uno de mis programas. ¿Cómo se configura la afinidad en una sola CPU única - ya que no estaba seguro de esto, por lo que yo estaba haciendo esto:Configuración de la afinidad de CPU utilizando el conjunto de tareas

taskset -c 2-2 tests/prog 1 2 3 

... esperando, que estoy programando el programa se ejecute en la CPU # 2 solo, siguiendo la misma manera para otras CPU. Incluso si estoy en lo cierto, esta es una mala forma de realizar lo que quiero IMO, ¿puedo obtener algo de ayuda?

Gracias,
Sayan

Respuesta

3

taskset -c 2 ... debería funcionar para fijar el programa de la CPU # 2 (que es el tercer CPU - CPU están numeradas de 0).

Incluso si estoy en lo cierto, esta es una mala manera de realizar lo que quiero IMO, ¿puedo obtener ayuda?

Depende de lo que quieras. ¿Qué está tratando de lograr?

+0

que estaba bajo la impresión de que taskset -c 2 programaría el programa en la CPU # 0, la CPU # 1 y # 2 de la CPU. Gracias por la aclaración. Solo quiero ejecutar un programa desde una CPU específica a la vez. Por cierto, ¿era correcta mi sintaxis sobre la pregunta original? – Sayan

+1

Correcto. 'taskset -c 2-2' también funciona, es innecesariamente detallado. – duskwuff

3

manera más fácil sería utilizar las máscaras de la CPU como

taskset -p mask pid 

#taskset -p 0x00000001 11587 
pid 11587's current affinity mask: ff 
pid 11587's new affinity mask: 1 
Cuestiones relacionadas