Multiprozessor Hardware
Tag,
Eine Software, die sehr viel Rechenleistung erfordert,bei welcher aber aufgrund des Rechenvorgangs immer nur ein Schritt berechnet wird, der dann den darauffolgenden beeinflußt und dann neu berechnet, braucht ein entsprechendes Gerät auf dem es einigermaßen fix laufen soll.
ein P4 mit 2GB Ram + normale Platte (ide/sata) benötigt für eine Berechnung 1h. Es sollte aber möglicherweise auf 5 Minuten reduziert werden bzw. 15 Minuten.
Derzeit liegt die Prozessorlast bei 100%. Die RAM Auslastung liegt bei ca. 50%/65%, Plattenzugriffe sind im grünen Bereich.
Geht also wirklich nur darum den Prozessor bzw. die Leistung drastisch zu erhöhen.
Clustering scheidet aus, weil die Software eben immer nur einen Schritt berechnet.
Gibts da nicht extra Kisten für, die man mit Prozessoren vollstopft?
1 Kiste mit 32 Prozessoren? Ich hab das schonmal irgendwo gelesen, aber scheinbar wieder total verdrängt.
Auch Schlagworte wie Multiprozessor bringen bei google oder hier nicht das was ich suche.
Ich wäre dankbar für Hinweise, wo ich mich näher mit dem Thema beschäftigen kann.
Eine Software, die sehr viel Rechenleistung erfordert,bei welcher aber aufgrund des Rechenvorgangs immer nur ein Schritt berechnet wird, der dann den darauffolgenden beeinflußt und dann neu berechnet, braucht ein entsprechendes Gerät auf dem es einigermaßen fix laufen soll.
ein P4 mit 2GB Ram + normale Platte (ide/sata) benötigt für eine Berechnung 1h. Es sollte aber möglicherweise auf 5 Minuten reduziert werden bzw. 15 Minuten.
Derzeit liegt die Prozessorlast bei 100%. Die RAM Auslastung liegt bei ca. 50%/65%, Plattenzugriffe sind im grünen Bereich.
Geht also wirklich nur darum den Prozessor bzw. die Leistung drastisch zu erhöhen.
Clustering scheidet aus, weil die Software eben immer nur einen Schritt berechnet.
Gibts da nicht extra Kisten für, die man mit Prozessoren vollstopft?
1 Kiste mit 32 Prozessoren? Ich hab das schonmal irgendwo gelesen, aber scheinbar wieder total verdrängt.
Auch Schlagworte wie Multiprozessor bringen bei google oder hier nicht das was ich suche.
Ich wäre dankbar für Hinweise, wo ich mich näher mit dem Thema beschäftigen kann.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 19667
Url: https://administrator.de/contentid/19667
Ausgedruckt am: 08.11.2024 um 05:11 Uhr
6 Kommentare
Neuester Kommentar
Hallo,
Mulitprozessormaschinen haben da ein ähnliches Problem wie ein Cluster: Die Berechnungen müssen parallelisierbar sein. Eine Multiprozessormaschine kann eine einzelne Berechnung auch nicht schneller durchführen als eine Einprozessormaschine, sie kann lediglich mehrere Berechnungen gleichzeitig durchführen.
Und dabei muss nicht nur der Algorithmus grundsätzlich parallelisierbar sein, sondern die konkrete Implementierung muss das auch vorsehen. Das ist z.B. der Grund, weswegen die DualCore - Prozessoren (sind tatsächlich zwei Prozessorkerne in einem Chip) in den meisten Anwendungsfällen nur relativ geringe Geschwindigkeitszuwächse bringen, und nicht die theoretisch möglichen (knapp) 100%.
Erkundige dich doch am besten beim Hersteller der Software, was er empfiehlt.
Filipp
Mulitprozessormaschinen haben da ein ähnliches Problem wie ein Cluster: Die Berechnungen müssen parallelisierbar sein. Eine Multiprozessormaschine kann eine einzelne Berechnung auch nicht schneller durchführen als eine Einprozessormaschine, sie kann lediglich mehrere Berechnungen gleichzeitig durchführen.
Und dabei muss nicht nur der Algorithmus grundsätzlich parallelisierbar sein, sondern die konkrete Implementierung muss das auch vorsehen. Das ist z.B. der Grund, weswegen die DualCore - Prozessoren (sind tatsächlich zwei Prozessorkerne in einem Chip) in den meisten Anwendungsfällen nur relativ geringe Geschwindigkeitszuwächse bringen, und nicht die theoretisch möglichen (knapp) 100%.
Erkundige dich doch am besten beim Hersteller der Software, was er empfiehlt.
Filipp
Liegt der Quelltext denn noch vor? Vielleicht lässt der sich auch noch optimieren, so dass einfach weniger Rechenaufwand nötig ist, da geht manchmal einiges. Ausserdem kann es nutzen, das Programm mit einem aktuellen Compiler zu kompilieren, die sind besser auf die Fähigkeiten (nicht nur HT und SSE und... sondern z.B. auch Sprungvorhersage) von aktuellen Prozessoren abgestimmt. Vielleicht findet sich auch eine Heuristik, mit der die Berechnungen abgekürzt werden können (das würde dann natürlich einer neuentwicklung schon relativ nahe kommen). Bei einer Neuimplementierung könnte man natürlich auch über ein Wechsel der Hardwareplattform nachdenken...
Filipp
Filipp