Pregunta cset shield --kthread on: ¿debería usar esto?


Estoy leyendo sobre el escudo de CPU usando Alex Tsariounov cset utilidad aquí: https://rt.wiki.kernel.org/index.php/Cpuset_Management_Utility/tutorial

En el tutorial, estoy encontrando que la redacción de la migración de subprocesos de kernel de tener acceso a todas las CPU para ejecutarse solo en un determinado cpuset es un tanto ambiguo

El tutorial dice lo siguiente:

Algunos hilos del kernel se pueden mover a los sin blindaje sistema cpuset as   bien. Estos son los hilos que no están vinculados a CPU específicas.

Si un hilo del kernel está vinculado a una CPU específica, entonces generalmente no es un   buena idea para mover ese hilo a la sistema establecer porque en el peor de los casos   puede colgar el sistema y, en el mejor de los casos, ralentizará el sistema   significativamente. Estos hilos son generalmente los hilos de IRQ en un verdadero   tiempo de kernel de Linux, por ejemplo, y es posible que no desee mover estos   hilos del núcleo en sistema. Si los dejas en el raíz cpuset, entonces   Tendrán acceso a todas las CPU.

El tutorial continúa y dice:

Sin embargo, si su aplicación exige un escudo aún más "silencioso", entonces puede mover todos los hilos del kernel movibles al blindado sistema establecer con el siguiente comando.

[zuul:cpuset-trunk]# cset shield -k on cset: --> activating kthread
shielding cset: kthread shield activated, moving 70 tasks into system
cpuset... [==================================================]% cset:
done

Estoy confundido por esta última oración. Al usar la palabra sin embargo, parece sugerir que normalmente deberías no mover los hilos del kernel movibles a los sin blindaje sistema conjunto.

¿Es este el caso, o es seguro mover los hilos del núcleo que poder ser movido a un cpuset, evitando que se ejecuten en algunos cpus?


1


origen




Respuestas: