Frage

Ich verstehe die Unterschiede zwischen einem Multi-Thread-Programm und einem Programm, das sich auf Inter-Maschine-Kommunikation. Mein Problem ist, dass ich ein schönes multithreaded Programm geschrieben in ‚C‘, das funktioniert und läuft wirklich gut auf einer 8-Core-Maschine. Es gibt nun Gelegenheit, Port dieses Programm zu einem Cluster Zugriff auf mehrere Kerne zu gewinnen. Ist es der Mühe wert, die pthread Sachen auszureißen und Nachrüstung MPI (die ich nie benutzt habe) oder sind wir besser dran Umkodierung die ganze Sache (oder die meisten davon) von Grund auf neu? Angenommen, wir sind „stecken“ mit C so ein Großhandel Änderung der Sprache ist keine Option.

Andere Tipps

Re. Ihr Kommentar zu Reed - das klingt wie eine einfache, mit geringem Overhead Umstellung auf MPI. Nur vorsichtig sein. Nicht all MPI-APIs dynamische Erstellung von Prozessen unterstützen, das heißt, Sie Ihr Programm mit N Prozessen (spezifizierte beim Start) starten und Sie sind mit N-Prozessen während der gesamten Lebenszeit des Programms fest

scroll top