Siguiente: ¿Cómo lo uso?
Subir: Introducción a Condor
Anterior: ¿Qué es Condor?
Índice General
¿Cómo funciona?
Básicamente, enviamos un trabajo a Condor, este lo pone en una cola, lo ejecuta y
finalmente nos avisa del resultado.
Vamos a verlo un poco más de cerca para intentar comprender como funciona:
- Normalmente usaremos Condor porque queremos ejecutar repetidas veces
un programa (posiblemente con diferente entrada) o porque se requiere mucho
tiempo para su finalización y, mientras tanto, necesitamos seguir usando nuestra
máquina.
- Inicialmente nuestro trabajo no necesita ninguna modificación para
ser enviado a Condor. Sin embargo, tenemos que escribir un archivo de
descripción del envío (ver sección 3.1.1).
- Una vez enviado a Condor, podemos seguirle la pista a nuestro
trabajo con el comando condor_q (ver sección 3.2) o
mediante un registro de actividad (fichero Log).
- Condor realiza periódicamente búsqueda de trabajos nuevos e intenta
casarlos con recursos disponibles. Si no hay disponibles, el trabajo se
quedará a la espera del próximo ciclo.
- Una vez Condor ha encontrado una máquina capaz de ejecutar el trabajo
pendiente, lo envía y empieza la ejecución. Pueden ocurrir varias cosas mientras se
está ejecutando un trabajo:
- Lo más deseable sería que finalizara con éxito. Si esto ocurriera
se enviarían las salidas del trabajo a donde haya especificado el usuario
y se mandaría un correo electrónico al mismo con un resumen de lo ocurrido.
- En el caso de que la máquina deje de estar utilizable (porque ha vuelto
el usuario o alguno de los motivos explicados más abajo) el proceso deberá
abandonarla. Si se estaba ejecutando en el universo ``standard'', se realizaría
una imagen del estado actual del proceso (checkpoint) (ver sec.
3.1.2) y se finalizaría su ejecución. En el
resto de universos, simplemente se instará al trabajo a que finalize su
ejecución (para ello se le envía la señal SIGTERM y si, pasado un cierto
tiempo, no muere se le envía SIGKILL).
- Otra posibilidad es que el propietario del trabajo haya decidido
borrarlo de Condor (ver sección 3.3) con lo que
finalizará su ejecución inmediatamente.
A la hora de enviar nuestro trabajo hemos de tomar algunas precauciones:
- Tenemos que elegir un ``universo'' adecuado: en la mayoría de los casos
nos bastará con el universo ``vanilla'' (ver sec. 3.1.2).
- Nuestro trabajo ha de ser capaz de ejecutarse en un sistema de procesamiento por
lotes:
- Ha de ser capaz de ejecutarse en ``background''. No ha de solicitar información
interactivamente.
- Puede usar STDIN, STDOUT y STDERR, pero estos serán archivos en vez de los
periféricos habituales (teclado y pantalla).
- Ha de organizar sus archivos de datos. Por ejemplo, separados por ejecuciones.
Notar que Condor no influye en el uso cotidiano de nuestros ordenadores, ya que solo
utilizará máquinas ociosas, o lo que es lo mismo, las que cumplan los siguientes puntos:
- No se está usando el ratón o teclado
- No se está usando la máquina remotamente
- No se está usando para ejecutar ningún otro trabajo.
Siguiente: ¿Cómo lo uso?
Subir: Introducción a Condor
Anterior: ¿Qué es Condor?
Índice General
Adrian Santos Marrero
2004-09-21