Yo estoy haciendo mi PFC basándome en Condor. Es un sistema de planificación de carga HTP (así que distribuye procesos, no sirve para programar un proceso para multiprocesador como MPI o PVM). Consta de varios procesos que se ejecutan como daemons y un conjunto de programas para acceder a ellos. Además tiene APIs para acceder a él vía SOAP o Perl. Tiene versión para Windows, Linux, MacOS X...
Además tiene otras características que sólo he visto en él, como checkpointing (puede parar la ejecución de un proceso y continuarlo en ese punto más tarde) y llamadas remotas (por ejemplo redirige un fopen al ordenador de envío). Estas características sólo se pueden utilizar si ha sido compilado con unas librerías propias.
No tiene problemas para enviar ficheros (incluso comprimidos) de entrada, así que puede disponer de ellos aunque no estén en un directorio compartido (Sun Grid Engine, similar, no puede).
He estado buscando bastante, y si lo que quieres es un sistema de distribución de procesos en una red de ordenadores, y que sea multiplataforma, es lo mejor. Leí algo sobre LVS pero no tenía tan buena pinta, y que yo sepa no había versiones más que para Linux.
Es un petardo, así de claro. He estado trabajando con él y efectivamente es sólo eso, un balanceador de carga, es decir, ejecuta una lista de procesos en varios ordenadores, pero no paraleliza. Lo más que llega a hacer es comenzar la ejecución de un proceso en una máquina lenta y cuando queda una rápida dentro del cluster hace un checkpoint y lo manda a la rápida...
No quiero decir que tu PFC sea un petardo, sólo que condor no es lo que estaba buscando.
Condor
(Puntos:1)( http://iiso.blogspot.com/ )
Yo estoy haciendo mi PFC basándome en Condor. Es un sistema de planificación de carga HTP (así que distribuye procesos, no sirve para programar un proceso para multiprocesador como MPI o PVM). Consta de varios procesos que se ejecutan como daemons y un conjunto de programas para acceder a ellos. Además tiene APIs para acceder a él vía SOAP o Perl. Tiene versión para Windows, Linux, MacOS X...
Además tiene otras características que sólo he visto en él, como checkpointing (puede parar la ejecución de un proceso y continuarlo en ese punto más tarde) y llamadas remotas (por ejemplo redirige un fopen al ordenador de envío). Estas características sólo se pueden utilizar si ha sido compilado con unas librerías propias.
No tiene problemas para enviar ficheros (incluso comprimidos) de entrada, así que puede disponer de ellos aunque no estén en un directorio compartido (Sun Grid Engine, similar, no puede).
He estado buscando bastante, y si lo que quieres es un sistema de distribución de procesos en una red de ordenadores, y que sea multiplataforma, es lo mejor. Leí algo sobre LVS pero no tenía tan buena pinta, y que yo sepa no había versiones más que para Linux.
Para más información, la web oficial es http://www.cs.wisc.edu/condor/ [wisc.edu]
PD: no es open source, pero la licencia [wisc.edu] parece bastante permisiva. No es un producto comercial ni similar.
-- Ideas + Ingeniería del Software [blogspot.com]
Re:Condor
(Puntos:1)