Condor, OGE e Torque possono portarti tutti lì, ma solo Condor ha una gestione delle dipendenze integrata con il suo strumento DAGMan . DAGMan consente di impostare un grafico aciclico diretto che descrive il flusso di lavoro e il manager si occupa di spostarsi tra i lavori nel flusso di lavoro e valutare i risultati di superamento / fallimento in ogni fase del flusso. Condor è relativamente indipendente dalla piattaforma, il che significa che lo è anche DAGMan, e puoi sicuramente avere un passo secondario eseguito su AIX quando il genitore funzionava su Linux o Windows. DAGMan non si occupa di dove vengono eseguiti i lavori, solo che i codici di uscita vengono passati o falliti.
Qualche consiglio per scegliere il software o se è meglio andare open source o commerciale?
Con alcuni avvertimenti, penso che valga la pena guardare le comunità libere in questo spazio.
OGE è in uno spazio strano adesso. Non è più gratuito eseguire la variante GE prodotta da Oracle e Oracle non sta più contribuendo con il codice che riscrive in GE SCC, ma esistono diverse fork del codice che stanno tentando di aggredire come progetti open source gratuiti. Univa in particolare ha guidato la carica , assumendo gli ex sviluppatori Sun GE per continuare a lavorare su una variante GE open source, liberamente disponibile. Grid Engine ha due cose da fare: è facile da configurare, è in grado di gestire lavori di breve durata (<2 minuti) senza impartire molto overhead di pianificazione ai lavori che rallentano la produttività. Il suo grande svantaggio è che non c'è un ottimo supporto per Windows. Alcuni di noi hanno fatto alcuni sforzi per portarlo su Cygwin molti anni fa, ma non è sicuro come quello nativo.
Ora Condor è la mia preferita delle tre tecnologie che hai citato. C'è una forte comunità attorno a Condor e il software è molto maturo (> 20 anni ormai). Il supporto nativo di Windows e POSIX significa che funziona molto bene ovunque. Il già citato DAGMan è solo uno dei tanti grandi pezzi di Condor. Può essere un tocco complicato da configurare, ma una volta installato e funzionante è solido come una roccia. Ha un linguaggio incredibilmente flessibile per fare corrispondenze di lavoro <-> macchine e costruire regole d'uso per le tue risorse. Supporta inoltre il provisioning dinamico sulle macchine, consentendo ai lavori di selezionare la quantità di risorse delle macchine di cui hanno bisogno e quindi ripubblicare la differenza come ancora disponibile. Supporta contatori di risorse globali in modo da poter vincolare cose come le licenze software. Ed ovviamente, ha DAGMan, che è uno strumento incredibilmente potente per la gestione del flusso di lavoro. L'aspetto negativo di Condor è il sovraccarico di pianificazione per i lavori di breve durata può essere oneroso. Volete lavori che durino più di 2 minuti idealmente, altrimenti la pianificazione inizia a diventare una grande parte del tempo del lavoro nel sistema.
La coppia è un po 'più di nicchia. Ne so meno, temo. Paragona più a Grid Engine che a Condor. Ci sono componenti aggiuntivi a pagamento citati da @warren che possono espandere ciò che la Torque base gratuita può fare.
Se vuoi provare le tre tecnologie e vedere come funzionano con i tuoi carichi di lavoro specifici, CycleCloud può creare pool sicuri, virtualizzati e preconfigurati con Condor, GridEngine o Torque, quindi non dedicare tempo a capire queste cose da parte tua. Sarebbero pochi dollari per creare piccoli pool di ogni tecnologia e provarli con carichi di lavoro rappresentativi. (Dichiarazione di non responsabilità: lavoro per Cycle Computing, creiamo CycleCloud)