Man kann die Geschwindigkeit der
Ausführung einer Aufgabe u.U. dadurch erhöhen, dass man die Aufgabe in Teilaufgaben
zerlegt und diese gleichzeitig auf verschiedenen Rechnern ausführen lässt; wodurch die
gesamte Bearbeitungszeit für die Aufgabe verringert wird. Dazu ist es erforderlich,
dass die Aufgabe in möglichst unabhängige Teilaufgaben zerlegt werden kann.
Ist diese Voraussetzung gegeben, so könnte man eine Prozesssteuerung
implementieren, die möglichst viele Teilaufgaben auf möglichst viele Rechner verteilt,
die Ergebnisse wieder einsammelt und ein Protokoll über den erfolgreichen Ablauf der
Bearbeitung erstellt. Die Prozesssteuerung kann entweder vom Benutzer manuell erstellt
werden, oder automatisch aus dem Programm generiert werden. Letzteres ist i.allg. zur Zeit
und aus prinzipiellen Überlegungen heraus noch nicht möglich.
Man erreicht mit dieser Vorgehensweise insbesondere eine Verringerung
der Antwortzeit. Zwar werden die Rechner auch besser ausgelastet, als wenn die Aufgabe nur
auf einem Rechner liefe; aber dieses ist weder das Ziel dieses Vorgehens noch wird das
auch immer erreicht. Außerdem kann dieser Ansatz nur dann zum Erfolg führen, wenn der
Verwaltungs-Overhead deutlich geringer ist als die Einsparung an Antwortzeit, was auch nur
bei sehr langen Teilaufgaben gegeben sein dürfte.
Stehen mehrere Aufträge zur Bearbeitung an, so kann durch geschickte
Auswahl der Aufträge und Verteilung auf verschiedene Rechner ebenfalls die mittlere
Antwortzeit aller Aufträge verringert werden. Die mittlere Antwortzeit wird z.B. minimal,
wenn immer der Auftrag mit der kürzesten Bearbeitungszeit vorgezogen wird. Dadurch werden
jedoch Aufträge mit langer Bearbeitungszeit u.U. stark benachteiligt, so dass
differenzierte Strategien angewendet werden sollten. Bei Einprozessorsystemen wird dieses
Ziel annähernd durch das Zeitscheibenverfahren (processor
sharing) erreicht. Bei
Rechnerverbunden ist diese Methode vermutlich erfolgversprechender als die Zerlegung einer
Aufgabe in verschiedene Teilaufgaben.