Nel cluster computing, sembrano esserci due opzioni: reindirizzamento delle attività e divisione delle attività. Il reindirizzamento delle attività sembra abbastanza semplice, è sufficiente che il master invii le piccole chiamate ad altri nodi nel cluster per l'elaborazione (ad esempio cluster di server web (credo)). La divisione delle attività sembra tuttavia selvaggiamente più complessa. Dato che non penso che tu possa avere due thread dello stesso programma eseguiti su macchine diverse, significa che devi dividere il lavoro.
Come se si dividesse il lavoro? Riesco a vedere alcune cose come il rendering o la codifica video solo perché puoi dire a ogni nodo di lavorare su una parte diversa del video, ma quando vuoi fare cose come calcola la cifra di 5 trilioni di torta , come lo divideresti? O anche nella scienza in cui è necessario simulare il tempo o altre attività ad alta intensità di risorse?
In breve, come dividi le attività che non sono realmente progettate per la suddivisione?