2010-09-14 11 views
6

Estoy ejecutando una gran cantidad de trabajos con Sun Grid Engine. Dado que estos son trabajos (~ 100000), me gustaría utilizar trabajos de matriz, que parece ser más fácil en la cola.Redirigir la salida a diferentes directorios para los trabajos de la cuadrícula del motor de cuadrícula solar

Otro problema es que cada trabajo produce un archivo stdout y stderr, que necesito para rastrear el error. Si los defino en el qsub -t 1-100000 -o outputdir -e errordir terminaré teniendo directorios con 100000 archivos en ellos, que es demasiado.

¿Hay alguna manera de que cada trabajo escriba el archivo de salida en un directorio (por ejemplo, un directorio que consta de los primeros 2 caracteres de la identificación del trabajo, que es letras hexadecimales al azar o el número de trabajo modulu 1000 o algo por el estilo).

Gracias

Respuesta

2

No puedo pensar en una buena manera de hacer esto con qsub ya que no hay interfaces de programación en el -o y -e opciones. Sin embargo, hay una manera de lograr lo que quieres.

Ejecute su qsub con -o y -e apuntando a/dev/null. Haga que el comando que ejecuta sea un tipo de contenedor que redirija su propia stdout y stderr a los archivos de la forma que desee (es decir, su estructura de directorios descompuesta) antes de ejecutar el trabajo real.

Cuestiones relacionadas