bajo rendimiento en el clúster HPC (sge) cuando se ejecutan varios trabajos

bajo rendimiento en el clúster HPC (sge) cuando se ejecutan varios trabajos

Sé que esto es una posibilidad remota, pero no tengo ni idea. Estoy ejecutando varias simulaciones por computadora en el clúster de Computación de alto rendimiento (HPC) del motor de red Oracle (SGE). Un solo trabajo se ejecuta a una cierta velocidad (aproximadamente 80 pasos por segundo) cuando agrego trabajos a la máquina, en un cierto umbral, la velocidad se reduce en dos. En una máquina (no sé el tipo de CPU), el umbral es de 11 trabajos para 16 CPU. En otro con el mismo número y tipo de CPU, el umbral es 8.

Al principio pensé que se trataba de un problema de memoria, pero cada trabajo requiere entre 60 MB y 100 MB y tengo 16 GB de RAM en cada una de esas máquinas.

¿Alguno de ustedes encontró tal problema? ¿Hay alguna forma de analizar esto?

Gracias.

Respuesta1

Sin conocer la configuración de su clúster, me pregunto si las CPU utilizan hiperamenaza. Los núcleos hiperamenazados se muestran como el doble de la cantidad de núcleos físicos, pero es posible que la potencia de cálculo no aumente linealmente para los núcleos no físicos.

https://superuser.com/questions/279629/cuánto-speedup-does-a-hyper-thread-da-in-theory

Respuesta2

Puede haber varias razones.

Aunque sus trabajos no consumen mucha memoria, es posible que estén llenando el bus de memoria (que conecta las CPU con la RAM). Si el bus está lleno, agregar más trabajos solo creará más presión en el bus de memoria, lo que hará que todo se ralentice.

Otra posible razón es la E/S. Si sus trabajos realizan muchas operaciones de archivos (por ejemplo, abrir/escribir/cerrar archivos), es posible que el disco del sistema no pueda mantener el ritmo si se ejecutan demasiados trabajos a la vez.

Otras razones son otros cuellos de botella en las CPU, como por ejemplo cachés compartidos o unidades de ejecución de punto flotante.

información relacionada