Page 2 of 3

Etwas allgemeines Ryzom-Tuning - Kurz und Knapp

Posted: Tue Jan 12, 2010 5:56 pm
by talyas
Etwas allgemeines Ryzom-Tuning - Kurz und Knapp

Einigen hier wird das nachfolgend Geschriebene nichts Neues sein.
Diese mögen es einfach überlesen und sich nicht zu Unrecht belehrt fühlen. Belehren is ja uncool. Ich verzichte auch weitgehend auf coole englische und unverständliche Fachbegriffe, mache dafür einfachere Erklärungen. Manch einer mag meinen Worten dadurch ggf. nicht so viel Wichtigkeit und Professionalität beimessen. Bitte dann einfach eine PM mit Name und Adresse, eine Beileidskarte wird dann automatisch versandt. :P


Also, in der Hoffnung, daß es das Thema brauchbar erklärt und beim "Tuning" der Einstellungen auf langsameren Rechnern behilflich sein möge, läßt sich dazu weitgehend folgendes sagen:

1. NeL
---
Die NeL ist eine Einkern-Engine, so wie der bedeutende Großteil aller Gameengines. Daraus ein Mehrkern-Monster zu machen ist eine immense Arbeit, nicht nur vom reinen Programmieren, sondern auch von der logischen Strukturierung her. Dinge zu parallelisieren, die normalerweise nacheinander laufen und oft aufeinander aufbauen, ist sehr schwierig. Ich würde nicht erwarten, daß das bald passiert, wenn überhaupt. Sinnvoller wäre: Unnötige Lasten in der Engine reduzieren, Ablauf optimieren, etc. Aber das tut hier nichts zur Sache, und die Devs wissen das sowieso.


2. Zugehörigkeit festlegen
---
Diese Option im Taskmanager ist für Ryzom und andere Einkernprozesse im Grunde recht sinnlos. Aber gut zu gebrauchen, wenn man Mehrkernprozesse auf wenige Kerne begrenzen will. Damit sie etwas anderes z.B. nicht stören.
NeL erledigt seine Arbeit in einem einzigen "Prozess". Dort baut ein Schritt auf dem nächsten auf. Das läßt sich technisch (ausser durch den Programmierer selbst) nicht "vergleichzeitigen". Teilt man das mehreren Kernen zu, so macht jeder ein Stückchen Arbeit und schiebt es dann einem anderen zu, der weitermacht. Durch das Weiterschieben ist das Aufteilen sogar potenziell langsamer als wenn der Prozess auf nur einem Kern gehalten wird - Trotzdem soll dies bei mehreren Spielern Vorteile gebracht haben.
Denkbar wäre, daß man andere Prozesse davon abhalten will, einen bestimmten Kern zu nutzen. Möglich wäre, Ryzom auf Kern 4 zu legen, und allen anderen die Nutzung von Kern 4 zu verbieten. Aber a) ist das nicht praktisch machbar, nicht jeder Prozess läßt sich per Hand einstellen, b) gibts (m.W.n.) keine Automatik oder speicherbare Einstellung dafür, und c) macht das der Kernel sowieso selbstständig und verteilt die Lasten meistens sinnvoll und gleichmäßig.


3. Performance
---
Ich spiele Ryzom (nicht normalerweise, aber gelegentlich) auf einem ION-Board. Eigentlich Müll, aber für knapp 20 Watt hat man einen guten Office- / Surf- / Netzwerkrechner / Mediaplayer. Lautlos. Hat eine schmale GeForce 9800 und 2 x 1,6GHz in der Atom-CPU, die technisch aber eher an die Leistung eines 1,2ers erinnern. Trotzdem: weitgehend flüssig
(Ich empfehle trotzdem nicht, so ein Ding zu kaufen, um darauf ernsthaft Ryzom oder andere 3D-Games spielen zu wollen - dafür ist und bleibt es Müll).
Bei Ryzom ist der Punkt, an dem die CPU wichtiger ist als die Grafikkarte, sehr niedrig gelegen. Es macht an einem bestimmten Punkt (wenn die Grafikkarte gut genug ist) also Sinn, die CPU zu entlasten. Jede Grafikkarte, die in den letzten 3-4 Jahren gekauft wurde und nicht gerade absoluter Müll war, ist stark genug für Ryzom. Als CPU ist ein guter DualCore mit 4GHz wesentlich wertvoller als ein Vierkerner mit 3,2GHz, was (siehe oben) für die meisten anderen Spiele ebenso gilt.
Daraus gefolgert sind mehr als 2 Kerne zwar nett, aber bezogen auf Ryzom nutzlos. Es kommt auf einen hohen Takt an. .. Noch :)
Obiges gilt natürlich nicht für Programme, die mehrere Kerne sinnvoll zu nutzen verstehen.


4. Tuning
---
Sound abstellen:
Der Sound kann in weniger als 1% der CPU-Leistung ganz bequem verrechnet werden. Was stresst ist ein schlechter Soundkartentreiber. Manche lassen das abspielende Programm einen Moment lang "vor dem Tresen warten", wenn es eine Hand voll neuen Sound abliefern möchte. In der Zeit kann das Programm nicht weiterarbeiten. Daher kann das Abschalten in Einzelfällen was bringen, manchmal sogar deutlich.
Ergänzung: Ich besitze 3 Rechner verschiedener Leistungsklassen, bei denen die Soundabschaltung keinen merkbaren Vorteil bringt. Bei einigen Ryzomspielern soll es aber durchaus deutlich spürbar sein, einen Versuch ist es in jedem Fall wert.

Grafikeinstellungen Offgame:
Größter Fresser ist jede Form von Anti-Aliasing.
Und zusätzliche (im Treiber hinzufügbare) Pixelshader, je nach Art.
Anisotrope Filterung ist im Schnitt weniger belastend.
Falls neuere Spiele mit normalen ingame-Einstellungen gut und flüssig arbeiten, kann man sie anlassen, dann liegt das Problem bei der Systembelastung.

Grafikeinstellungen Ryzom-Konfigurator:
Ati-Karten halten sich meist an DirectX, nVidia-Karten können beides gut.
Unter Erweitert kann man Pixel- und Vertexshader abstellen. Hilft aber meistens nur bei älteren Karten. Ryzom macht davon zwar Gebrauch, die Gewinne sind aber relativ gering, die optischen Verluste auch. Auch dort hilft einfaches Ausprobieren. Man erhöht damit auch die Kompatibilität zu älteren/schlechten Karten/Treibern.

Ingame-Einstellungen:
Obiges war bisher nur zur Grafikkartenentlastung.
Die Ingame-Einstellungen steuern Dinge, die die Grafikkarte und CPU unterschiedlich stark belasten. Das habe ich in der Tabelle unten mit dem Balken angegeben.
(Diese Balken geben nicht an, wie man die Regler im Spiel einstellen soll.)

Wer also primär seine Grafikkarte entlasten will, dem ist z.B mit dem Abstellen des Schattens geholfen, und wer eher die CPU etwas entlasten will, sollte hier die ersten beiden Einstellungen herunterregeln.

Die Wertung besteht aus der Kenntnis der NeL-Quellen, Erfahrung mit dieser und anderen Engines, und einer kleinen Portion Bauchgefühl. Als Referenz für die Verteilung nehme ich gedanklich ein System, in dem CPU und Grafikleistung in etwa ausgeglichen vorhanden sind, also weder eine überstarke CPU, noch überstarke Grafikkarten.

(Die obenstehenden haben normalerweise die größere Auswirkung)

[CPU -O--- GFX] - Landschaft Sichtweite
[CPU -O--- GFX] - Landschaft Qualität - Bezier-Verrechnung. Ist hauptsächlich CPU..
[CPU ---O- GFX] - Effekte Schatten aktivieren
[CPU --O-- GFX] - Allgemein Warte VBL - siehe unten *)
[CPU --O-- GFX] - Charakter Sichtweite
[CPU ---O- GFX] - Charakter Max Hoch Def.
[CPU ---O- GFX] - Landschaft Details am Sichthorizont
[CPU ---O- GFX] - Charakter Max Polygone
[CPU ---O- GFX] - Effekte Max Polygone - Beeinflußt Feuerwerk, Effekte wie beim Ring-Terminal, Flammen, Magie, etc ...

(Fast) vernachlässigbar:
[CPU ----O GFX] - Effekte Bloom - Sehr einfacher Filter, machen heutige Karten zum Frühstück.
[CPU --O-- GFX] - Landschaft Mikro-Vegetation
[CPU --O-- GFX] - Allgemein Textur - Macht ein wenig mehr Speicher zu, aber das wars schon. Belastet eher das System als die Karte, aber nicht deutlich.

*) Heißt im Treiber "Vertikale Synchronisierung". Nur benutzen, falls das Spiel eh schon flüssig läuft. Fügt Wartezeiten im Prozessablauf hinzu.

Sonstiges Offgame:
Defragmentierung wird überschätzt.
Auf gut organisierten Rechnern fast überflüssig.
Auf schlecht organisierten Heimrechnern mit normaler Nutzung nicht öfter als 1 Mal alle 1-3 Monate.
Auf Workstations kommts auf die Nutzung an.

Hintergrundtools:
Fressen Speicher. Selten genug CPU, daß es Spiele stören würde. Manche greifen auf spezielle Systemteile zu, was andere Programme zum Warten zwingt, wenn sie das gleiche vorhaben. Solche Tools bremsen dadurch den ganzen Rechner. Sollte man also besser gar nicht nutzen.
Wer Vista *hust*, oder Seven mit 2GB Ram und vielen Tools / Widgets nutzt:
Aufrüsten auf 4GB in 64bit-Versionen, oder unnötige Tools entfernen.
Ansonsten geht Ryzom in die Auslagerung, was mehr Stocken, Ladezeiten und Lags verursacht, als alles andere. Defekte und schlechte Netzwerkverbindungen mal aussen vor gelassen.
Ryzom machts sich in 700-1300 MB Ram recht gemütlich. Wer noch was mehr frei hat, erlaubt dem System, durch Caching (Intelligentes Zwischenspeichern) ein paar Festplattenzugriffe einzusparen, was ebenfalls Ruckler vermindert.



Soo. Wer hier angekommen ist: Glückwunsch, ist was länger geworden, als gedacht :)

Hmm .. hab sicher wieder irgendwas vergessen *grübl* .. gibt ja edit. :)
Edit: Kleine RS-Korrekturen, leicht umformuliert / erweitert
Edit: Nochmals auf Nachfrage leicht erweitert / umformuliert
Edit: Ein paar Rückmeldungen mit eingearbeitet, Formulierung verbessert.

Viel Erfolg, alle Angaben ohne Gewähr, dafür nach bester Erfahrung.
Grüße


[ˈtʌʎˌjaː ˈʃʌtˑənˌtans]

Re: Dual-Core optimierung?

Posted: Tue Jan 12, 2010 8:02 pm
by tomsen6
Danke für diese ausführliche Erklärung. Leider treffen die Erklärungen aber, zumindest bei mir, überhaupt nicht zu. Ganz im Gegenteil. Aber vlt. hilft es ja manchen.

Re: Dual-Core optimierung?

Posted: Tue Jan 12, 2010 9:55 pm
by talyas
Das klingt interessant.

Würdest du mir evtl. per PM deine Systemdetails und deine Ryzomeinstellungen senden, bzw. ob und welche Probleme auftreten?
Nehme das gerne oben mit auf, falls sich etwas nachvollziehbares ergibt.

Die technischen Grundlagen sind schon weitgehend so - wie sie sich individuell auswirken, variiert leider immer etwas..
Aber vielleicht hab ich mich oben auch nur irgendwo missverständlich ausgedrückt. Würde da gerne mal nachbohren.. :)

Gruß!

[ˈtʌʎˌjaː ˈʃʌtˑənˌtans]

Re: Dual-Core optimierung?

Posted: Tue Jan 12, 2010 11:55 pm
by peaglex
man bin ich blöd, das hab ich garnicht gesehen garg0yl3, danke dir ^^

@talyas: bei win7 mit 4gb ram braucht man nicht unbedingt ein 64bit OS, man kann unter win7 32bit den 4gb support aktivieren ;) bei vista ist das nicht möglich.

naja soviel tuning ist das auch nicht, wenn ich mein system mit den empfohlenen systemanforderungen vergleiche, dann liegt es ein stück weit drüber :)
an sich hab ich so keine probleme, es ist mir nur in fairheaven aufgefallen und AA & AF sind zwar fresser, aber wenn man eine gute grafikkarte hat, dann macht das nichts aus, denn dies verwaltet die gpu und nicht die cpu ;)

Re: Dual-Core optimierung?

Posted: Wed Jan 13, 2010 1:49 am
by talyas
Na jut, dann fang 'mer ma jaanz ooben an..
wollte mich mal informieren ob das spiel auf dual-core optimiert ist oder nur auf single-core.

Die Frage dürfte ja jetzt nicht nur ge-, sondern auch er-klärt sein. War ja deine Eingangs-"Frage" ..

bei win7 mit 4gb ram braucht man nicht unbedingt ein 64bit OS, man kann unter win7 32bit den 4gb support aktivieren bei vista ist das nicht möglich.

Was ein "Behelf" ist, der mir bekannt ist. Kann aber nicht auf jede Ausnahme eingehn, der Beitrag war ja so schon viel zu dick. Aber wenigstens deckt er alles ab.. Hätte ich nichts von 64bit geschrieben, gäbs sicher 3 Leute, die dann drauf hingewiesen hätten, daß man dafür aber ein 64bit OS bräuchte.. was abgesehn von deiner Ausnahme auch stimmt.

naja soviel tuning ist das auch nicht, wenn ich mein system mit den empfohlenen systemanforderungen vergleiche, dann liegt es ein stück weit drüber

Der Text selbst ist auch kein "Tuning", sondern eine kleine Erklärung, was im Hintergrund passiert, wo die Lasten liegen, was etwas nützt, und was eher nicht, und mit welchen Reglern man wo Lasten erzeugt oder mindert.
Es bietet genug Erklärung und Ansätze fürs Tunen, um einen Rechner, der weit unter deiner Prachtsemmel liegt, noch flüssig spielbar mit Ryzom anzufreunden. Ohne auf zuviel verzichten zu müssen. Und weitgehend ruckelfrei, sogar in Zora.

an sich hab ich so keine probleme, es ist mir nur in fairheaven aufgefallen

Hmm, .. also das: ..
in fairheaven ruckelt es bei mir sehr heftig was mich wundert

.. klang aber irgendwie anders ;) Zwischenzeitlich sagtest du aber mal, daß das Ruckeln inzwischen weg sei, hab ich auch gelesen, sogar vor meinem Post.

... und AA & AF sind zwar fresser, aber wenn man eine gute grafikkarte hat, dann macht das nichts aus, denn dies verwaltet die gpu und nicht die cpu

Naja, *murmel* .. ich sollte das nächste Mal lieber wieder mehr kryptische Fachwörter benutzen.
Also was anderes habe ich ja auch nicht prädiziert. Beide sind im Text korrekt als GraKa-lastig deklariert.
;)


Dann war der Text weiterhin auch nicht exklusiv nur an dich gerichtet, sonst hätt ich ihn per PM an dich gemailt. Da aber Fragen, wie man was einstellt, immer mal wieder gerne auftauchen, hab ich die Gelegenheit genutzt und dazu etwas geschrieben.
Wen es interessiert, und wem das hilft, der soll es nutzen.

Nur dafür steht es dort ;) Der Rest is mir rille.

würde mich freuen über auskunft, danke

Büdde.

Gruß


[ˈtʌʎˌjaː ˈʃʌtˑənˌtans]

Re: Dual-Core optimierung?

Posted: Wed Jan 13, 2010 10:31 am
by peaglex
naja du hast schon irgendwie recht :) wegen fairheaven, es ruckelte sehr als es noch standart auf core1 startete. ich habe den prozess dann auf core2 gelegt und dadurch ist das ruckeln in FH nicht mehr so stark, wenn ich schätzen müsste wieviel fps es wären nach der umlegung auf core2, würde ich sagen so um die 20-25 fps in FH :)

Re: Dual-Core optimierung?

Posted: Wed Jan 13, 2010 1:02 pm
by talyas
Hmm, das ist jedenfalls ein ungewöhnliches Verhalten. Mitunter teilt dein Kernel dem Core1 einen Prozess zu, der Ryzom stört - was ansich aber auch schon ungewöhnlich wäre.

Du sagtest Eingangs etwas von 90-100% auf Kern 1 und 30% auf Kern 2. Das zeigt, daß auf jeden Fall etwas anderes mitläuft und einige Rechenzeit beansprucht - sind ja etwa 130%, 100% davon Ryzom, und die 30% etwas anderes. Windows füllt die Kerne von vorne beginnend auf, also trennst du mit der Zwangsverlegung auf Kern 2 den Ryzom-Prozess von dem (oder den) anderen ab, der von Windows auf Kern 1 gelegt wird bzw. dort weiterläuft.

Die Probleme und Lösungen sind oftmals so vielfältig, wie die Systeme selbst ..
Aber wenn du den Störenfried entdeckst, kannst du ihn ja hier posten und wem anders damit helfen, der eine ähnliche Konfiguration fährt.

Grüße


[ˈtʌʎˌjaː ˈʃʌtˑənˌtans]

Re: Dual-Core optimierung?

Posted: Wed Jan 13, 2010 1:41 pm
by tomsen6
fps kannste ig ich glaube unter shift+n einsehen.

Re: Dual-Core optimierung?

Posted: Wed Jan 13, 2010 6:08 pm
by peaglex
hmm nee damit kannst nur die verbindungsdaten ansehen, man konnte mal über den debugmodus die fps sehen, aber der debugmodus wurde schon lange entfernt.

ich hab jetzt mal nochwas anderes getestet, habe ryzom auf beiden kernen laufen lassen und muss sagen, dass das ruckeln in FH nun weg ist :)

Re: Dual-Core optimierung?

Posted: Thu Jan 14, 2010 9:43 am
by tomsen6
Warum hört keiner auf mich ......