Domino-Performancesteigerung: Undokumentierter Serverparameter gibt massiv Speicher frei

  • Durch Zufall bin ich bei Recherchen zu einem bevorstehenden Workshop zum Thema Performance-Tuning auf den japanischen IBM-Seiten über einen in der englischen Übersetzung undokumentierten Performance-Schalter in der notes.ini mit dem Wert GO_FASTER=x gestossen.


    Link: インタビュー:パフォーマンスを極める3 ドミノ・パフォーマンス・チーム


    Dabei handelt es sich, wie ich durch Versuche mit Domino-Servern der Releases 6, 7 und 8 herausfand, um einen Parameter, der das Speicherverhalten von Dominoservern ausschließlich unter MS Windows massiv beeinflußt. Da mein japanisch bereits etwas eingerostet ist habe ich durch die Übersetzung mit meinem Zeichenlexikon nur die wichtigsten Randparameter und betroffenen Betriebssysteme ermitteln können. Habe es aber an einen Dienstleister weitergereicht. Ich hoffe, bis Montag die Ergebnisse präsentieren zu können.


    Anmerkung: Der Schalter funktioniert nicht bei Servern, die lediglich den Java-Controller mit Java-Console verwenden. Versuch ist daher zwecklos. Auch sollte der Server idealerweise nicht gerade frisch gestartet worden sein, hier ist der verwendete Speicher noch nicht ausschlaggebend genug.


    Hier nun die Step-by-Step Anleitung zur Verifikation:


    Schritt 1)


    Auf einem mit herkömmlicher (!) Konsole laufenden (!) Dominoserver den Windows-Taskmanager starten und bereithalten.


    Schritt 2)


    Das Konsolenfenster über das Windows-Systemmenü Maximieren, es sollte dann die linke Bildschirmhälfte fast komplett einnehmen.


    Schritt 3)


    An der Konsole eingeben "set config GO_FASTER=1" (ohne die Anführungszeichen) und <RETURN>.


    Schritt 4)


    Sobald die Bestätigung an der Konsole gekommen ist ca. 60 - 90 Sekunden warten, solange benötigt der Memory-Mapper für die internen Heap-Verlagerungen.


    Schritt 5)


    Den bereits geöffneten Windows-Taskmanager auf den Reiter "Systemleistung" stellen und den Wert "Physikalischer Speicher" - "Verfügbar" merken bzw. im Auge behalten.


    Schritt 6)


    Jetzt das Konsolenfenster von "Maximiert" auf "Minimiert" (also als Icon ablegen) umschalten und den frei werdenden Speicher bewundern.


    Viel Spaß beim Wundern - falls jetzt jemand dadurch freie Speicherriegel hat, für die er plötzlich keine Verwendung mehr findet freut sich unser Dominoforum-Admin gern über großzügige Spenden.

  • Carsten, das war das Beste, was ich zum heutigen Tage hierzu gelesen habe!


    Ein Tip aber noch hierzu: Wer in seinem Windows-Server mehr als 24 GB RAM verbaut hat (die exakte Grenze sind wohl 23,96 GB), sollte unbedingt davon ausgehen, dass die Heap-Verlagerungen dann durchaus auch bis zu zwei Stunden benötigen können - der Memory-Mapper arbeitet dann mit einem viel aufwändigeren Speichermodell.


    Bernhard

  • Bernhard:


    Danke für die Ergänzung! Leider hatte ich keine Maschine mit dieser Speicherkonfiguration zur Verfügung, aber das kommt mir insbesondere im Zusammenhang mit der Bestimmung des Statistikwertes Server.ExpansionFactor bekannt vor. Allerdings war ich bisher der Meinung, dass diese Grenze bei 64MB liegt. Könnte durch das schlechtere Memory-Timing bei den älteren Mainboards daher auch bei 24 MB gelegen habe (abzüglich 640kB Real Memory, daher deine krumme Zahl mit 23,xxx).


    rudi:


    Die letzte 5er Maschine ist mit Auslaufen der Maintanance selbständig Offline gegangen (habe die Wartungsverträge dann nicht mehr verlängert, IBM wollte doppelte (!) Preise für separaten Support. Und dass DU den Parameter schon kanntest war irgendwie auch wieder klar. Aber das glaub ich dir erst, wenn ich zertifizierten Zugriff auf die Dokumente und alle detaillierten Replizierprotokolle deiner DB habe =P

  • Na, dann ist es ja kein Wunder, dass das bei meinen Servern nie hingehauen hat. Ich dachte immer, der Switch hieße Run_Fast=1, bzw. Run_Faster=1 als Synonym zu Run_Fast=2. Ist eigentlich an dem Gerücht was dran, dass Run_Fast (oder Go_Faster, oder wie auch immer), den Domino etwas einbremst, um auch große Maschinen auszulasten? Leider habe ich keine so große Maschine, um das mal auszutesten. Rudi, was sagt denn deine ini-DB dazu?

    Life is not a journey to the grave with the intention of arriving safely in a pretty and well-preserved body, but rather to skid in broadside, thoroughly used up, totally worn out, and loudly proclaiming "Wow, what a ride!!! :evil:
    Beschleunigung ist, wenn die Tränen der Ergriffenheit waagrecht zum Ohr hin abfliessen - Walter Röhrl

  • Der Parameter funktioniert übrigens auch am Client (ab 6.5.5). Dadurch kann man den Notes-Client auch auf einem 486er laufen lassen. Unsere Anwender sind regelrecht erschrocken, die alten Rechner haben wir natürlich gleich reaktiviert.


    Grüsse,
    Thorsten

  • Folgenden Dokumente sind da.
    Run_fast hat eine erstellungs datum von 1.04.1997 und hat mit notes 5.0 sein ende erlebt
    Run_Faster stammt aus 1.04.2001, und scheint es noch zu tun..


    Go_Faster stammt auf 1.04.2002 und hat wie gesagt auf Domino 5 genau das gleiche getan wie auf alle nachfolgenden versionen..


    Ronka

  • So Leute, ich habe jetzt die Antwort meines japanischen Übersetzungsbüros: die Lösung für den richtigen Parameter lautet natürlich und selbstverständlich April April.


    Aber, ihr Helden, wenn euch das Lesen meiner kleinen Anleitung Spaß gemacht hat und ihr 5 Minuten eurer wertvollen Zeit opfern könnt (ich habe ja auch ein paar Minuten fürs Schreiben des lustigen Artikels geopfert), dann macht euch doch mal bitte den Spaß und führt die Anleitung auch tatsächlich mal aus (auch wenn ihr nicht daran glaubt, ihr könnt ja hinterher den Parameter wieder aus der Notes.ini löschen, tut ja nicht weh) und berichtet mir mal, was ihr dabei erlebt habt.


    Ich garantiere euch, ihr werdet euren Augen nicht trauen *grins*.

  • Ich traue den Augen schon, nur eben nicht den Windows-Interna. Die Erklärung ist denkbar einfach. Bei Anwendungen, die im Vordergrund laufgen, versucht Winschroitt soviel wie möglich physischen Speicher zu nutzen. Was nicht per se schlecht ist, was aber bei Anwendungen, die als Dienst laufen, nicht immer sinnig ist. Minimiert man nun diese Anwendung, denkt sich Windoof, die würde nicht mehr gebraucht und paged den allokierten Speicher in die Auslagerungsdatei. Ergo: scheinbar wird Speicher frei geräumt.


    Zusammen hängen tut das vorrangig mit 2 Dingen: zum Einen kann man einstellen, ob man eher "Programmen" oder lieber Diensten mehr Wumms zukommen lassen mag (Energieoptionen -> Erweitert).


    Zum anderen hat Windoof die unangenehme Eigenschaft, nicht alles an physischen RAM zu verbraten (wie z.B. UNIX-artige OSse), sondern einen Teil zurück zu behalten und lieber zu cachen. Soll heißen: von z.B. 3GB RAM werden z.B. nur 2 verbraucht, dann wird geswappt, ein Gig bleibt über. Windoof denkt sich, das könnte man ja vielleicht mal gebrauchen.


    Und das ist der beobachtete Effekt. Es wird ein Teil des physischen RAMs, den eine Vordergrundanwendung belegt (und das ist zunächst einmal *jede* Anwendung, die ein Fenster auf den Bildschirm zaubert, also auch Dienste wie der Domino) in die Auslagerungsdatei geschrieben. Wird das Fenster dann wieder in den Vordergrund geholt, wird aus der Auslagerungsdatei in den RAM geschrieben. Damit kann man also schon ein wenig Performance aus dem Domino rausholen: man minimiert das Komanndozeilenfenster einfach nicht. Klingt komisch, ist aber tatsächlich so...

    Life is not a journey to the grave with the intention of arriving safely in a pretty and well-preserved body, but rather to skid in broadside, thoroughly used up, totally worn out, and loudly proclaiming "Wow, what a ride!!! :evil:
    Beschleunigung ist, wenn die Tränen der Ergriffenheit waagrecht zum Ohr hin abfliessen - Walter Röhrl