Zitat:
Original geschrieben von bvl
Eine Anwendung muss nicht für Dual-Core Prozessoren geschrieben sein, um von Dual-Core profitieren zu können, wenn die genutzen Bibiliotheken Dual-Core nutzen können.
Zudem gibt es durchaus Ansätze ala "Compilerschalter" die (wie gut auch immer) funktionieren. Leider weiss ich aber nicht, ob sich sowas auf dem komerziellen Markt findet.
|
Eine Anwendung muss immer expliziet fuer Multiprozessing geschrieben werden wenn sie davon tatsaechlich profitieren soll.
Mit einem Compilerschalter ist es nicht getan. Wenn es so einfach waere waeren alle Anwendungen schon lange multiprozessingfaehig. Damit bekommt man aber hoechstens eine Anwendung mit mehreren Threads hin die aber trotzdem noch keinen Gewinn bringt weil ein Thread auf den anderen warten muss und der tatsaechliche Rechenaufwand der Threads extrem asymetrisch verteilt ist. Auch der aktuelle FS besteht aus mehreren Threads.
Worauf es ankommt ist die Arbeit moeglichst gleichmaessig zu verteilen. Dazu muss man die Algorithmen auseinander nehmen und schauen wo welche Rechenlast entsteht. Einige Algorithmen lassen sich sowiso schon von der Theorie her niemals parallelisieren. Bei anderen muss man aufwendig die Abhaengigkeiten entkoppeln. Der Skalierungspotential wird deshalb bei den meisten Anwendungen daher auch weit von den moeglichen 100% entfernt sein welches bei einigen speziellen Anwendungen bspw. im Renderingbereich durchaus erreicht wird.
Was den FSX betrifft wuerde ich mir diesbezueglich keine allzu grossen Hoffnungen machen.