hallo!
Hallo,
Ich will einige sehr CPU-intensive Berechnungen durchführen;
das Programm sieht so aus, dass es die Rechenlast in je einen
Thread pro Core aufteilt und dann jeder Thread ca 5 Stunden
läuft, bis er durch ist. Jeder Thread beansprucht ca. 50 MB
RAM und greift während der Berechnung auf die Festplatten
nahezu garnicht zu.
Ich möchte mir nun ein paar Rechner kaufen, um diese
Berechnungen durchzuführen.
Die nötigen Software-Programme laufen jetzt, doch die
Hardware muss halt her.
Ich habe die Möglichkeit, den folgenden Rechner für 50 Euro
pro Stück zu kaufen:
IBM xSeries 345 mit
2 x Intel XEON 2,4 GHz
512 MB DDR SDRAM 266Mhz PC2100
1 x 18 GB Ultra160 SCSI
Hört sich für mich nach einem vernütigen Preis an.
Der reine Anschaffungspreis klingt in der Tat verlockend.
Ich könnte so 1000 Euro in das Projekt investieren.
Das wäre allerdings nur der Kaufpreis für die Server. Es könnte aber schon malüberlegt werden, wie es sich auf Dauer dann mit den Stromkosten verhält.
Dafür könnte ich dann 20 von den genannten Servern kaufen,
womit ich dann 40 2,4 GHZ-Prozessoren hätte.
Ich würde schon mal ins Blaue vermuten, das 2 DUAL - CPU Racks mit 6 Kern - Opterons ( also 24 Kerne ) mindestens die gleiche Rechenleistung bringen.
Die Prozessoren selber sind ja aber auch recht billig, so nen
XEON 2,4 GHz kriege ich für unter 20 Euro.
Das müssen dann aber vermutlich auch identische Prozessoren zum vorhandenem System sein.
Jetzt stellen sich mir folgende Fragen:
Was wäre für meine Anforderungen in Hinblick auf die
Verhältnisse Verarbeitungsgeschwindigkeit/Stromverbrauch
Hier käme es zunächst einmal darauf an, welche Datenmenge in welcher Zeit verarbeitet werden soll, bzw. werden kann.
Dann kommt noch die Frage, welchen Energieaufwand ich einsetzen muß, um in gleicher Zeit die gleiche Leistung zu erhalten.
20 alte Server mit 40 Kernen können unter Umständen weniger erreichen als 4 moderne Server mit 16 Kernen.
Wenn wir auch berücksichtigen, das alte CPUs mit einem Kern allein in etwa einen vergleichbaren Energiebedarf wie moderne Quad/ - Hexacores haben, wird das alte System auf Dauer wohl recht teuer werden.
Dabei sei zubeachten, das die Infrastruktur ( Mainboards und Netzteile ) ebenfalls pro Stück Energie brauchen.
Verarbeitungsgeschwindigkeit/Anschaffungspreis das beste?
Da würde ich im Umkehrschluss mal grob nachrechnen, wann sich modernere Server gegenüber einer günstigen Altlösung amortisieren werden ?
Ein fiktives, vereinfachtes Rechenbeispiel:
1 Server alt = 200 Watt ( 2 Kerne / 40 nötig)
1 Server neu = 300 Watt ( 8 Kerne / 20 nötig)
Recheneffizienz ( Mflop/s ) alt / neu = 1:2
<small>( bei angenommener, identischer Taktfrequenz )</small>Nutzungsdauer ( Vollast ) = 12 h/Tag
Stromkosten pro Kw/h = 0,25 €
Daraus ergeben sich pro Tag Energiekosten von:
Alt: ( 20\*0,2 Kw/h\*12h ) = 48 Kw/h pro Tag [12 € / Tag]
Neu: ( 5\*0,3 Kw/h\*12h ) = 18 Kw/h pro Tag [4,5€ / Tag]
Das wären im Jahr allein anhand der Beispielrechnung **~ 2700 €** gesparte
Stromkosten.
( Nun könnte man noch evtl.noch einen möglichen Klimatisierungsaufwand des Serverraumes berücksichtigen....)
Für 3700 € sollte sich bestimmt ein zeitgemäßeres Serverarray realisieren lassen.
Es kommt primär auf die CPUs an;
Ich weiss jetzt nicht, was eine Opteron - Quadcore kostet, aber 4 der alten Xeons kosten auch ~ 80 €. Bei neuen ( und weniger ) CPUs ist natürlich auch die Wahrscheinlichkeit geringer,das ein Prozessor vorzeitig ausfällt.
Es sei dazu zu bedenken, das auch Halbleiter im Betrieb einem gewissem Verschleiß unterliegen. Da wirst Du also bei alten Xeons mit etlichen 1000 geleisteten Betriebsstunden ein deutlich erhöhtes Risiko haben, das Hardware - Komponenten ausfallen werden.
mit 500 MB RAM kann ich 10
Threads laufen lassen und die Festplatte muss auch nur für das
OS + max 1 GB reichen.
Auch als Laie stelle ich mir mal vor, das es nicht ganz so einfach laufen wird, denn das Betriebssystem wird selber schon einmal einen Teil des RAM für sich und den Betrieb des Systems benötigen.
Wäre es deshalb nicht sinnvoll, in einen Rechner möglichst
viele CPUs zu stecken? Was wäre günstiger: 2 Rechner mit
Mainboards die je 2 CPUs fassen oder 1 Rechner mit einem
Mainbaord, auf das 4 CPUs passen?
Vom Stromverbrauch her wird es sicher schon mal Sinn machen, möglichst viele Kerne auf einem Board vereinen zu können. Denn wie oben schon erwähnt, braucht ein Mainboard mitsamt Lüftung für seinen Betrieb auch schon mal Energie.
Da würde 1x4 bestimmt noch etwas besser abschneiden, als 2x2.
( Boards mit Prozessoren )
Ich denke aber mal, das Boards mit Dual - CPU am verbreitetstem sind.
Und da ein Board auch mal den Geist aufgeben kann, würde ich mal schauen, was sich nachträglich zu welchem Preis wie einfach beschaffen läßt.
Ist es besser, solche Low-End-Prozessoren zu nehmen? Oder
lieber Dual-Core- oder Quad-Core-Prozessoren?
Ich würde dann aus o.g. Gründen lieber mal Rat bei Experten einholen und den eigenen Ansprüchen entsprechend in aktuelle Hardware zu investieren.
Da können Profis Dir gewiss etwas Angemessenes empfehlen.
Mit welcher Hardware läuft mein Programm am effizientesten in
Hinblick auf Anschaffungs- und Stromkosten?
Welche Rechenleistung Du wirklich benötigst und in wie weit sich das Programm parallelisieren läßt, weiss ich nicht.
Aber nach obiger Beispielrechnung kannst Du Dir vorab schon mal Gedanken machen, was bezüglich Verbrauch und Zuverlässigkeit auf Dauer sinnvoller wäre. ( Zumal Strom auch nicht billiger wird )
Über ein paar Gedanken und vielleicht weiterführende Links
würde ich mich freuen.
Was für Rechenleistung bezüglich Deiner Software sinnvoll wäre, kannst Du hier bestimmt schon mal in den Software / Anwendungsbrettern vorab grob abklopfen.
Derart spezielle Links kann ich Dir als Laie leider nicht anbieten.
Gruß
Paul
mfg
nutzlos