Pregunta

Estoy intentando ejecutar trabajos qsub en un clúster SGE (Sun Grid Engine) que admite un máximo de 688 trabajos.Me gustaría saber si hay alguna manera de averiguar la cantidad total de trabajos que se están ejecutando actualmente en el clúster para poder enviar trabajos según la carga actual del clúster.

Planeo hacer algo como:duerma durante 1 minuto y verifique nuevamente si la cantidad de trabajos en el clúster es <688 y luego envíe más trabajos.

Y solo para aclarar, mi pregunta se refiere a conocer la cantidad total de trabajos enviados en el clúster, no solo los trabajos que he enviado actualmente.

Gracias de antemano.

¿Fue útil?

Solución

Puedes usar qstat enumerar los trabajos de todos los usuarios;esto con awk y wc se puede utilizar para averiguar el número total de trabajos en el clúster:

qstat -u "*" | awk '{if ($5 == "r" || $5 == "qw") print $0;}' | wc -l

El comando anterior también tiene en cuenta los trabajos que están en cola y esperando ser programados en un nodo informático.

Sin embargo, los administradores de sistemas del clúster podrían no permitir que los usuarios verifiquen trabajos que no les pertenecen.Puedes verificar si puedes ver los trabajos de otros usuarios ejecutando:

qstat -u "*"

Si sabe con certeza que otro usuario está ejecutando un trabajo y aún así no puede verlo mientras ejecuta el comando anterior, lo más probable es que los administradores del sistema hayan desactivado esa opción.

Idea tardía:Según tengo entendido, usted es solo un usuario habitual del clúster; ¿por qué se molesta en enviar trabajos de esta manera?¿Por qué no envía todos los trabajos que desea y si el clúster no puede programarlos, simplemente los colocará en un qw indicarlos y programarlos cuando SGE considere que es el momento más apropiado.

Otros consejos

Dependiendo de cómo esté configurado el clúster, utilice la matriz de trabajos (-t opción para qsub) superaría este límite.

Tengo límites similares establecidos para la cantidad máxima de trabajos que un solo usuario puede enviar.Este límite se aplica a casos individuales de qsub y no el envío de una matriz de trabajos únicos, potencialmente muchas tareas (ese límite se establece mediante otra variable de configuración, max_aj_tasks).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top