Wie kann man eine Single-Thread-Anwendung effizient auf mehreren Prozessorkernen ausführen?

Wie kann man eine Single-Thread-Anwendung effizient auf mehreren Prozessorkernen ausführen?

Wir verwenden diese alte Anwendung (Aldfaer), die nur einen einzigen Thread verwendet. Einer ihrer Prozesse benötigt derzeit etwa 90 Minuten, und wir möchten die Zeit, die für die Fertigstellung dieses Jobs benötigt wird, verkürzen. Dazu möchten wir diesen einzelnen Thread über mehrere CPUs laufen lassen.

Kennt jemand eine Methode, um dies zu erreichen? Dies kann sogar mit CPU-Virtualisierung oder etwas Ähnlichem möglich sein.

Antwort1

Wenn die Daten, die die Anwendung verarbeitet, in kleinere Pakete aufgeteilt werden können, können Sie mehrere Kopien der Anwendung ausführen, die jeweils einen Teil der Daten verarbeiten und dann versuchen, das Ergebnis zusammenzusetzen (z. B. mit einem Skript).

Antwort2

Was Sie beschreiben, ist nicht möglich. Kaufen Sie einen Computer mit der schnellsten CPU, die Sie finden können (die Anzahl der Kerne/Threads ist unwichtig).

verwandte Informationen