HTCondor es un marco de software de computación de alto rendimiento de código abierto para la paralelización distribuida de grano grueso de tareas computacionalmente intensivas. [ 1 ] Puede utilizarse para gestionar la carga de trabajo en un clúster de computadoras dedicado o para distribuir el trabajo a computadoras de escritorio inactivas , lo que se conoce como recuperación de ciclos . HTCondor se ejecuta en los sistemas operativos Linux , Unix , Mac OS X , FreeBSD y Microsoft Windows . HTCondor puede integrar tanto recursos dedicados (clústeres montados en rack) como máquinas de escritorio no dedicadas (recuperación de ciclos) en un único entorno de computación.
HTCondor es desarrollado por el equipo HTCondor de la Universidad de Wisconsin-Madison y está disponible para su uso gratuito. HTCondor sigue una filosofía de código abierto y está licenciado bajo la Licencia Apache 2.0. [ 2 ]
Si bien HTCondor aprovecha el tiempo de procesamiento no utilizado, dejar los equipos encendidos para su uso con HTCondor aumentará el consumo de energía y los costos asociados. A partir de la versión 7.1.1, HTCondor puede hibernar y reactivar equipos según políticas definidas por el usuario, una función que anteriormente solo estaba disponible mediante software de terceros.
Historia
El desarrollo de HTCondor comenzó en 1988.
HTCondor era conocido anteriormente como Condor; el nombre se cambió en octubre de 2012 para resolver una demanda por infracción de marca registrada. [ 3 ]
HTCondor fue el software de planificación utilizado para distribuir las tareas para el ensamblaje del primer borrador del genoma humano.
Ejemplo de uso
El clúster HTCondor del Centro de Supercomputación Avanzada de la NASA (NAS) consta de aproximadamente 350 estaciones de trabajo SGI y Sun , adquiridas y utilizadas para el desarrollo de software, visualización, correo electrónico, preparación de documentos y otras tareas. Cada estación de trabajo ejecuta un demonio que supervisa la entrada/salida del usuario y la carga de la CPU. Cuando una estación de trabajo permanece inactiva durante dos horas, se le asigna una tarea de la cola de procesamiento por lotes, la cual se ejecuta hasta que el demonio detecta una pulsación de tecla, un movimiento del ratón o un uso elevado de la CPU (que no sea de HTCondor). En ese momento, la tarea se retira de la estación de trabajo y se vuelve a colocar en la cola de procesamiento por lotes.
Características
HTCondor puede ejecutar trabajos tanto secuenciales como paralelos. Los trabajos secuenciales se pueden ejecutar en varios "universos" diferentes, incluido el "universo básico", que permite ejecutar la mayoría de los programas "listos para procesamiento por lotes", y el "universo estándar", en el que la aplicación de destino se vuelve a enlazar con la biblioteca de E/S de HTCondor, que proporciona E/S remota y puntos de control de trabajos. HTCondor también ofrece un "universo local" que permite ejecutar trabajos en el "host de envío".
En el mundo de los trabajos paralelos, HTCondor admite la interfaz estándar de paso de mensajes y la máquina virtual paralela (Goux, et al. 2000), además de su propia biblioteca de trabajador maestro "MW" para tareas extremadamente paralelas.
HTCondor-G permite que los trabajos de HTCondor utilicen recursos que no están bajo su control directo. Se utiliza principalmente para comunicarse con recursos de la red y la nube , como Globus (antes y después de su implementación), Nordugrid ARC , UNICORE y Amazon Elastic Compute Cloud . Sin embargo, también puede utilizarse para comunicarse con otros sistemas de procesamiento por lotes, como Torque/PBS y LSF . Actualmente, se está desarrollando la compatibilidad con Sun Grid Engine como parte del proyecto EGEE .
Otras características de HTCondor incluyen " DAGMan ", que proporciona un mecanismo para describir las dependencias entre trabajos.
Véase también
Referencias
- ↑ Thain, Douglas; Tannenbaum, Todd; Livny, Miron (2005). "Computación distribuida en la práctica: la experiencia de Condor" (PDF) . Concurrency and Computation: Practice and Experience . 17 ( 2–4 ): 323–356 . CiteSeerX 10.1.1.6.3035 . doi : 10.1002/cpe.938 . S2CID 15450656 .
- ↑ "HTCondor - Información de licencia" . research.cs.wisc.edu .
- ↑ Tannenbaum, Todd. "El nombre "Condor" cambia a "HTCondor"." . Archivado del original el 16 de junio de 2013 . Consultado el 11 de marzo de 2013 .
Enlaces externos
- Sitio web oficial
- Software libre programado en C++
- Computación paralela
- computación en malla
- Programación de trabajos
- Software que utiliza la licencia Apache.