PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Serverhardware korrekt für Rendering einrichten


DaBrain
2014-02-11, 14:56:19
Ich bin durch günstige Umstände an einen 32-Kern Opteron Server gekommen, den ich gerne zum Rendern unter 3D Studio Max einsetzen würde.

Mein erster Test war ernüchternd. Die 32 "Magny Cours" Kerne (4x8), konnten gerade mal meinen alten Q6600 schlagen.

Ich weiss, dass die 6100er Opterons schon recht alt sind, aber das ist um ein Vielfaches schlechter als ich erwartet hatte.

Wie muss ich den Server einrichten, damit man ihn vernünftig zum Rendern einsetzen kann?


Ich hatte schon etwas von "NUMA" gelesen und davon, dass man nicht alle Kerne an ein Bild setzen sollte, sondern eine 3ds Max Instanz pro Prozessor starten sollte.

Ich habe keine Hemmungen ein bisschen was im Bios einzustellen oder das System neu aufzusetzen, wenn es nötig ist. ;)

Wäre super wenn mir jemand einen Tip geben könnte!

(del676)
2014-02-11, 15:14:00
Mit 3DMax kenn ich mich zwar ned aus, aber du kannst generell mal die Multicore Leitungsskalierung deines Systems testen.
Z.B. mit dem Y-Cruncher.
http://www.numberworld.org/y-cruncher/

Einmal Singlethreaded starten und viele Stellen berechnen lassen (so dass es zirka 20 Minuten dauert), und dann dasselbe nochmal mit 32 Threads.
I.d.R. skaliert das mit 80-90% Effizenz

Lokadamus
2014-02-11, 15:25:09
Wäre super wenn mir jemand einen Tip geben könnte!Hast du im Taskmanager geschaut, ob wirklich alle Kerne etwas machen? Mit Pech haben nur ein paar etwas gemacht.

http://superuser.com/questions/101459/does-3ds-max-2009-support-mulitple-cores

DaBrain
2014-02-11, 22:40:55
Danke schonmal für die Antworten! :)

Ja es waren alle Kerne zu 100% ausgelastet. Was es für mich noch unglaublicher macht, dass ein alter Vierkerner mithalten kann...

Y-Cruncher werde ich morgen mal anwerfen.


Vielleicht auch nicht ganz unwichtig:
Programme starten auch alle sehr sehr lansam, obwohl das Booten selbst schnell geht.

Ich werde NUMA testweise mal ausstellen.
In Windows (Server 2008 R2) habe ich die Leistung in der Verwaltung erfolglos von Hintergrundprozessen auf Programme umgestellt.

RaumKraehe
2014-02-11, 22:59:38
Mal ne ganz blöde Frage: Wieviel RAM hast du im System?

Rendern ist RAM intensiv.

Wenn wirklich 32 Kerne parallel Rechnen könnte ich mir vorstellen das der RAM recht schnell knapp wir und die Performance dropt da viel geswappt werden muss. Wenn da z.B. 32 GB Speicher drinn sind bleibt pro CPU nicht mehr viel übrig.

Ich habe da leider keine Vergleichswerte Parat da ich ich zeitlich eher selten zum rendern komme da mir die Zeit dazu schlicht fehlt. :( Früher war der Knackpunkt immer der RAM. ;)

DaBrain
2014-02-12, 00:32:52
Guter Punkt. Derzeit sind 64GB verbaut, aber Windows Server 2008 kann leider nur 32GB verwenden.

Für die Testszene hätten aber die 8GB pro CPU ausreichen sollen. Mehr hat mein alter Q6600 auch nicht.

RaumKraehe
2014-02-12, 00:55:00
Mhm, ich weiß nicht in wie weit du mit deiner Rechnung richtig liegst.

Nach meinem Verständniß müsste doch jeder Kern, nicht CPU, alle Daten für die komplette Szene benötigen (inkl texturen usw) um auch nur einen Teil des Bildes zu rendern. Ich bin da aber ich nicht wirklich der Crack. Als ich mal Netzwerkrending gemacht hatte konnte jeder Kern immer nur ein Bild berechnen. Multiple Kerne an einem Bild war nicht möglich.

Das ist heute sicher anders. Ich mach nur noch mit Blender rum und da können mehrere Kerne auch an einem Bild rechen. Doch auch dort gehen mir manchmal die 16GB RAM die ich in meinem Rechner habe zur Neige. Schon so eine simple Erde mit 4-5 Texturen (Tag/Nacht/Wolken/Highmaps) kommt beim Rendern bei mir auf 3-4 GB.

Ich weiß, auf 3dsmax ist das aber auch nicht wirklich übertragbar. :( War nur ne Idee. Gefühlt würde ich sagen das 32 GB bei 32 Kernen zu wenig sind. :) Aber ich hab auch eigentlich nicht wirklich einen Plan. Also ignorieren wenn hier Stuss steht.

DaBrain
2014-02-12, 15:07:43
Achso das ist auch ein interessanter Ansatz. Ich habe zwar Ahnung vom Rendern, aber ich habe noch nie darüber nachgedacht, ob mehr Kerne auch mehr Ram insgesamt benötigen. Ich denke schon, dass jeder zusätzliche Thread mehr Ram benötigt.

Ich war eigentlich auf die Unterschiede beim Ram eingegangen. Jeder pysiaklische Prozessor hängt doch direkt an seinem Ram, auf den er schnell zugreifen und langamer am Ram der anderen CPUs.

RaumKraehe
2014-02-12, 15:25:54
Bei einem reinem thoeretischen Vergleich schlägt sich der Opteron gegen den Quad gar nicht so schlecht.

http://www.cpu-world.com/Compare/291/AMD_Opteron_6100_series_1.6_GHz_%282S161800T8E21%29_vs_Intel_Core_2_Quad_Q6600.h tml

Diese RAM Sharing Technologie soll ja nicht gerade die beste Performance haben. Möglicherweise ist das in der Tat der Flaschenhals.

Zumindest meiner bescheidenen Meinung und Erfahrung nach war der Unterschied beim rendern wenn der Rechner swappen musste oder nicht extrem groß.

Gast
2014-02-12, 18:59:45
lust mal nen blender benchmark laufen zu lassen?

wenn ja einfach hier ein blender build für ein os saugen

-> http://builder.blender.org/download/

benchmark file laden

-> http://blenderartists.org/forum/showthread.php?239480-2-6x-Cycles-render-benchmark

file öffnen und settings anpassen

http://picload.org/image/ldriaci/screenshotfrom20.png

center -> top to bottom und tiles auf x=8 y=8

f12 drücken!

DaBrain
2014-02-13, 10:16:52
Klar, wäre auch mal interessant zu sehen ob es an 3D Studio liegt.
Zu Y-Cruncher bin ich leider gestern nicht mehr gekommen. Kann erst Montag wieder testen.

Vielleicht wäre Linux auch noch mal einen Versuch wert.
Die Windows Server Enterprise Edition Lizenzen wären mir doch etwas zu teuer...

@RaumKraehe
Sind 4 Opteron 6128er. Also immerhin 2Ghz pro Kern.
Angeblich kann man die per Software sogar noch übertakten. Die Kühlung würde das hergeben. Aber das sehe ich mir erst an wenn alles richtig läuft.

kunibätt
2014-02-14, 23:47:59
Welchen Renderer benutzt du in 3DSMAX überhaupt?
Wenn du den Scanline nutzt, kein Wunder. Der ist Asbach und kaum multi-threaded. Entweder Mentalray (nicht gerade toll) oder gleich was gescheit implementiertes wie VRAY nehmen.
Linux und 3DSMAX schließt sich gegenseitig aus. Macht aber nichts, da es Maya und Blender gibt ;)
Grats zur netten Hardware und lass den Blender Benchmark mal laufen.

DaBrain
2014-02-28, 16:53:50
Sorry, ich hatte leider eine Weile zu wenig Zeit übrig für das Projekt.

In 3ds Max verwende ich Mentalray, aber ich will gerne nochmal vray ausprobieren.
Maya kommt für mich leider nicht in Frage, da ich schon seit Ewigkeiten mit 3ds arbeite...

Ich hoffe ich komme heute dazu den Y-Cruncher und Blender laufen zu lassen. Könnte etwas später werden. ;)

Zum Vergleich werfe ich das auch nochmal auf meinem FX 8350 @4,3Ghz an.

DaBrain
2014-03-06, 14:42:46
So endlich bin ich einen Schritt weiter.

Ich habe verschiedene Benchmarks laufen lassen und alle zeigen eine Schwäche im selben Bereich.
Der Server hat sehr schlechte Werte im Memory Bereich. Alle anderen Werte sind einigermaßen OK.

Katastrophal ist besonders der Memory Write Wert. Die Latency ist sehr hoch.

Woran könnte das liegen?
(Meinem Gefühl nach könnten es die "Interleaving" Einstellungen sein.)

kunibätt
2014-03-06, 19:20:56
Welche Benches genau?
Und zeig bitte die Ergebnisse.
Bis jetzt gab es ja ausser einem schlechten 3DSMax-Wert nicht viel zu sehen.
Danach evtl Gegentest mit ner Linuxdistri vom Stick aus gegentesten.

DaBrain
2014-03-07, 11:27:02
Im Kopf habe ich gerade noch die Werte aus dem Passmark.

Memory Latency lag bei 68
Memory write war 765


Ich habe gerade ein Biosupdate gemacht. Der Speicher scheint vorher nicht richtig erkannt worden zu sein und lief mit 667Mhz statt 1333Mhz.

Allerdings ist das Rendering immer noch recht langsam.
Bei den Interleaving Werten bin ich mir immer noch nicht sicher was die besten Einstellungen sind.

DaBrain
2014-03-07, 18:10:59
Hier nochmal kurz die Ergebnisse aus Passmark.

Interessant finde ich die Kurve und wie stark die Leistung ab ~5MB abfällt.
Da scheint irgendetwas wirklich sehr schief zu laufen.


Kann da jemand etwas draus ableiten?

RaumKraehe
2014-03-07, 18:45:22
Zumindest war ja dann die Vermutung schon mal richtig. Aber ab dem Punkt kann ich dir leider auch nicht weiterhelfen, kein Plan von. :)

Aber schreib mal bitte hier rein was du gemacht hast wenn es dann läuft. Ich wills zumindest wissen.

DaBrain
2014-03-10, 11:33:48
Gerne, sobald ich etwas rausfinde. ;)

Ich habe mal einen Memory Test durchlaufen lassen. Der hat allerdings keine Fehler aufgedeckt.

Jetzt stehe ich allerdings selber auch auf dem Schlauch.
Ich hoffe mal es gibt hier noch jemanden, der mehr Ahnung von der Thematik hat als ich.

(del676)
2014-03-10, 12:15:27
Da faellt mir nur mehr der "Jugend forscht" Ansatz ein.

Alles ausbauen, nur eine CPU und 2 Ramriegel rein - testen
Dann 2 andere Ram Riegel nehmen - testen
usw... damit die ganzen Rams durchtesten auf Auffaelligkeiten
Dann mit der anderen CPU testen.

Eventuell ergibt sich dann ein Bild, welches auf einen Fehler schliessen laesst.

DaBrain
2014-03-10, 20:10:18
Ja.... das hatte ich auch schon überlegt. Dann werde ich nur eine ganze Weile brauchen bis ich damit durch bin. Im Moment habe ich ein bisschen wenig Zeit dafür.
Bei 4 CPUs und 16 Riegeln ist das schon recht viel Aufwand.

Stabil ist der Server ja. Wenn es sich vermeiden lässt, will ich nicht an der Hardware rumbasteln...


Ich gehe immer noch davon aus, dass ich nicht der größte Server Experte auf 3DC bin. :D
Irgendwer mit mehr Ahnung als ich kann mir bestimmt noch einen Tipp geben.