PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Vista x64 - Erfahrungen mit Auslagerungsdatei auf Ramdisk


DevilX
2009-03-18, 09:54:29
Ich habe mal angefangen mit einer Ramdisk zu experimentieren, mit dem Hintergedanken das viele Spiele nur einen Teil des Rams nutzen und trotzdem auslagern.
Ich habe von meinen 8GB Ram die Hälfte als Ramdisk genommen, und diese mit der Auslagerungsdatei versehen.

Mir ist nicht ganz klar wofür die Einstellungen die ich bei der Ramdisk vornehmen kann stehen, bzw was passiert wenn man sie verstellt.

Erster Eindruck Windows ist etwas träger geworden, könnte das daran liegen das Windows 8GB Ram sieht, aber nur 4 nutzen kann??

Dann habe ich mal GTA4 gestartet und bin Kreuz und Quer durch die Stadt gefahren.
Das gelegentliche aufpoppen von einzelnen Texturen, welches ich vorher gelegentlich bemerkt habe, ist mir nicht mehr aufgefallen.
Auch gelegentliches Ruckeln ist mir nicht mehr aufgefallen.

Wenn der CP 1.7 für Gothic draußen ist werde ich nochmal ausprobieren wie sich Gothic verhält wenn die Auslagerungsdatei auf der Ramdisk ist.


Mich würden noch eure Erfahrungen zu diesem Thema interessieren

Sentionline
2009-03-18, 15:00:58
Ab 4GB RAM gehört die Swap Datei abgeschaltet. Denn wenn man Windows weiterhin auslagern lässt, und das auch noch auf einer RAMDISK, dann erzeugt man mehr CPU und HDD Last, mehr nicht. Auf 64Bit Systemen sollte man keine RAMDISK anlegen. Es sei denn, du könntest ein Spiel auf die RAMDISK kopieren und von dort spielen. Villeicht zum experimentieren; bei 8GB RAM ein 4GB RAMDISK erzeugen und von da Spiele Spielen, die viel Last erzeugen (z.B. STALKER oder Gothic 3)...das wäre nett...aber keine Swap Datei.

Die RAMDISK + SWAP methode ist für 32Bit Systeme (http://www.forum-3dcenter.org/vbulletin/showthread.php?p=7128241#post7128241) gedacht, wo das Mainboard und das Betriebssystem keine 4GB RAM ausnutzen.

Was du vorhast, ist womöglich RAM als vergrößerten (Datei-)Cache für das BS zu benutzen. Das geht nicht. Für mehr Tempo unter Vista x64 sorgt nur noch eine Intel SSD, alles andere wie ReadyBoost, ReadyDrive oder Superfetch...alles Müll & Einbahnstraße.

Hacki_P3D
2009-03-18, 15:11:32
Ab 4GB RAM gehört die Swap Datei abgeschaltet.

Nope, das ist nonsens.

Sentionline
2009-03-18, 16:16:14
Ich schalte sie aus, denn bei 4GB RAM oder mehr besteht kaum noch Erfordernis zum auslagern.

HeldImZelt
2009-03-18, 18:33:03
Sogar derzeit noch auf Seite 1...
http://www.forum-3dcenter.org/vbulletin/showthread.php?t=448161

PatkIllA
2009-03-18, 18:45:00
Nope, das ist nonsens.
Das ist nur nonsens wenn man nonsens Programme hat, die auf eine Auslagerungsdatei bestehen.

DevilX
2009-03-18, 18:55:39
@HeldImZelt
hmm irgendwie hab ich das total übersehen. und als ich aufgemacht habe wars aber sicher nicht auf Seite 1. Das macht den Thread hier ja irgendwie sinlos, wäre für nen close.

Gast
2009-03-20, 16:33:57
Das ist nur nonsens wenn man nonsens Programme hat, die auf eine Auslagerungsdatei bestehen.

wenn man den festplattenplatz nicht braucht ist es immer nonsens, das ist nämlich das einzige was man bekommt, mehr performance garantiert nicht.

PatkIllA
2009-03-20, 18:03:11
wenn man den festplattenplatz nicht braucht ist es immer nonsens, das ist nämlich das einzige was man bekommt, mehr performance garantiert nicht.
In manchen Situationen wird halt doch mal was unnütz ausgelagert. Zumindest unter XP. Bei Vista müsste ich mal schauen.

Gast
2009-03-20, 18:25:29
In manchen Situationen wird halt doch mal was unnütz ausgelagert. Zumindest unter XP.

nö, wird es nicht, ausgelagert wird erst wenn der RAM so richtig schön voll wird.

PatkIllA
2009-03-20, 18:26:51
nö, wird es nicht, ausgelagert wird erst wenn der RAM so richtig schön voll wird.
Nein wird es nicht und ich habe in dem anderen Thread sogar schon erklärt, warum das sinnvoll ist und dass man das in jedem Betriebssystembuch nachlesen kann.
Erst auszulagern, wenn der RAM voll ist wäre eine gigantische Performancebremse im Fall, wo der Speicher knapp wird.

Gast
2009-03-20, 20:17:52
Erst auszulagern, wenn der RAM voll ist wäre eine gigantische Performancebremse im Fall, wo der Speicher knapp wird.

deshalb wird nicht erst ausgelagert wenn der speicher zu 100% sondern schon wenn er so ca. 80% voll ist, weil es dann nötig ist, du hast gesagt mit auslagerungsdatei wird unnötig ausgelagert, was eben nicht stimmt.

dr_AllCOM3
2009-03-20, 20:42:06
das ff profil auf eine ramdisk zu verfrachten hat einen merklichen geschwindigkeitsschub gebracht, vor allem beim auswählen meiner nicht wenigen lesezeichen. die werden anscheinend jedesmal von der hdd geladen.

The Cell
2009-03-23, 08:55:57
Das ist nur nonsens wenn man nonsens Programme hat, die auf eine Auslagerungsdatei bestehen.

Wenn man wie in deinem Falle glaubt zu wissen und eben nicht weiß, was am Swapfile für Funktionalität hängt, dann stimmt deine Argumentation auch. Ansonsten ist es einfach nicht richtig.

Stichworte sind hier Commit Charge / Commit Limit, Full Dumps etc.

Gruß,
TC

PatkIllA
2009-03-23, 09:03:08
Die Dumps gehen seit Vista auch ohne Auslagerungsdatei und Meldungen über fehlenden virtuellen Adressraum sind mir auch seit Jahren nicht untergekommen. Die Dumps bringen einem Endanwender auch überhaupt nichts.
Zumal ja viele empfehlen die Auslagerungsdatei auf eine feste Größe zu setzen, was dann die gleichen Limits setzt wie keine Auslagerungsdatei. 2 GiB Speicher + 2 GiB Auslagerungdatei haben keinen Vorteil gegenüber 2 GiB Speicher + 0 GiB Auslagerungdatei. Wenn man ohne Auslagerungdatei in Limits rein läuft hatte man halt nicht genug Speicher.

The Cell
2009-03-23, 09:32:13
Grüß dich!

Die Dumps gehen seit Vista auch ohne Auslagerungsdatei

Die Full-Dumps nicht, wenn man sie per Reg erzwingt. Und für die anderen, empfehle ich diesen Artikel.
http://support.microsoft.com/?scid=kb%3Ben-us%3B254649&x=4&y=12

Die Dumps bringen einem Endanwender auch überhaupt nichts.

Doch, die bringen nämlich, dass der Endanwender zu jemandem hingehen und dieser das Problem analysieren kann. Die Methode IF BLUESCREEN THEN REINSTALL ist kein schöner Weg.

Zumal ja viele empfehlen die Auslagerungsdatei auf eine feste Größe zu setzen, was dann die gleichen Limits setzt wie keine Auslagerungsdatei. 2 GiB Speicher + 2 GiB Auslagerungdatei haben keinen Vorteil gegenüber 2 GiB Speicher + 0 GiB Auslagerungdatei.

Wie durch meine Argumente oben schon erwähnt: Full Dumps möglich und das Commit Limit ist höher.
Ich weiß, nun kommt wieder das Kein-echter-Schotte-Argument.

Kannst du mir auf die schnelle erklären

-was exakt ausgelagert wird?
-welcher Prozess dafür zuständig ist?
-welche Kriterien erfüllt sein, damit etwas ausgelagert wird?
-was sind deine Kriterien für "zu wenig" Arbeitsspeicher?

Gruß und einen schönen Morgen,
TC

PatkIllA
2009-03-23, 10:08:24
Grüß dich!



Die Full-Dumps nicht, wenn man sie per Reg erzwingt. Und für die anderen, empfehle ich diesen Artikel.
http://support.microsoft.com/?scid=kb%3Ben-us%3B254649&x=4&y=12

Note The Complete memory dump option is not available on computers that are running a 32-bit operating system and that have 2 gigabytes (GB) or more of RAM.
Damit ist die Option unter XP32 doch schon ziemlich nutzlos bei vielen Anwendern. Außerdem darf man die Auslagerungsdatei nicht auf ein anderes Laufwerk verschieben, was aber in anderen Dokumenten von MS empfohlen wird.

Doch, die bringen nämlich, dass der Endanwender zu jemandem hingehen und dieser das Problem analysieren kann. Die Methode IF BLUESCREEN THEN REINSTALL ist kein schöner Weg.
Und das hast du schon mal in der Praxis erlebt, dass ein Endanwender den Dump auf DVD brennt und an sämtliche Hersteller seiner Kerneltreiber schickt?
Wenn es hochkommt sieht der Endanwender einen Treibernamen im BSOD und aktulisiert den dann mal.

Kannst du mir auf die schnelle erklären

-was exakt ausgelagert wird?
-welcher Prozess dafür zuständig ist?
-welche Kriterien erfüllt sein, damit etwas ausgelagert wird?
-was sind deine Kriterien für "zu wenig" Arbeitsspeicher?
Die genauen Kriterien kennt eh wohl nur MS. Wenn nicht darfst gerne ein Paper bringen indem extakt die Kriterien drinstehen. Sowas kann ja auch angepasst werden. Außerdem können die Prozesse ja noch Vorgaben machen, was bevorzugt ausgelagert wird, was dann das empfundene Verhalten völlig ändert.
Zu wenig Arbeitsspeicher ist spätestens wenn die entsprechende Fehlermeldung kommt. Mir ist zwar bewusst, dass es vorteilhafter sein kann Daten zu cachen oder die Anwendung sich mehr Speicher nehmen zu lassen als tagelang ungenutze Daten im Speicher zu behalten, aber heute hat man oft soviel Speicher, dass man da nicht ansatzweise in Bedrängnis kommt. In der Anfangszeit von XP hat man mit den typischen 128 MB dagegen dauert am Limit bewegt und XP wurde eben nicht angepasst, um den Mehrspeicher zu nutzen.

The Cell
2009-03-23, 10:38:18
Hi PatkIllA!

Note The Complete memory dump option is not available on computers that are running a 32-bit operating system and that have 2 gigabytes (GB) or more of RAM.
Damit ist die Option unter XP32 doch schon ziemlich nutzlos bei vielen Anwendern. Außerdem darf man die Auslagerungsdatei nicht auf ein anderes Laufwerk verschieben, was aber in anderen Dokumenten von MS empfohlen wird.

Wie du sagtest, bei vielen, aber eben nicht bei allen. Und das ist ja meine fundamentale Kritik an der Argumentation: Wenn 4GB, dann kein Swapfile. Das ist leider zu eindimensional. Das mag in evtl. in deinem Fall funktionieren, in meinem Fall wäre ich massiv unglücklich damit. Es kommt eben auf den Anwender an. Und da die Performance unter einem Swapfile nicht leidet, spricht wenig bis gar nichts dagegen.

Und das hast du schon mal in der Praxis erlebt, dass ein Endanwender den Dump auf DVD brennt und an sämtliche Hersteller seiner Kerneltreiber schickt?
Wenn es hochkommt sieht der Endanwender einen Treibernamen im BSOD und aktulisiert den dann mal.

Ja, habe ich schon selbst erlebt, das habe ich gemacht, als ich noch nicht so tief in der Materie drinnensteckte und noch ein "Normalo" war.
Und es gibt evtl. immer noch den Fall, dass man einen Menschen, der einen Debugger bedienen kann, im Bekanntenkreis hat. Dieser kann dann eben Analyse betreiben und eben en detail sagen, wo es denn klemmt.
Gefühlt beschränken sich 90% der "normalen" Windows-Analysen auf Bauchgefühl und Raten. Ersteres ist manchmal effektiv, letzteres fast immer Zeitverschwendung.

Die genauen Kriterien kennt eh wohl nur MS. Wenn nicht darfst gerne ein Paper bringen indem extakt die Kriterien drinstehen. Sowas kann ja auch angepasst werden. Außerdem können die Prozesse ja noch Vorgaben machen, was bevorzugt ausgelagert wird, was dann das empfundene Verhalten völlig ändert.

Das Papier steht hier in Buchform in meinem Regal und heißt "Windows Internals Vol. 4" von Russinovich und Solomon. Mehr dazu später.

Der Prozess macht keine Angaben, was ausgelagert werden darf. Das zu entscheiden ist Aufgabe des Speichermanagements. Und das, was im Swapfile landet, sind *Trommelwirbel*

Modifizierte Daten. Kein Code, der schon auf der Platte liegt.
Warum sollte das Speichermanagement Dinge, die schon auf der Platte existieren, erneut auf die Platte speichern. Das wäre nicht sonderlich effizient, oder?

Angenommen, du machst Notepad auf.
Dann tippst du einen Text und lässt die Kiste einige Stunden stehen. Dann erkennt der Algo, dass dieser Prozess, gar nichts macht und dann wird aufgeräumt. Working Set Size heruntergefahren und modifizierte Daten ausgelagert. Und damit meine ich NUR den Text, den du getippt hast. Nicht, wie oben erwähnt, Notepad.exe.

Bestünde denn ein allgemeines Interesse daran, dass ich mal einen Artikel über die Windows Speicherverwaltung schreibsele, das wollte ich ohnehin schon vor Ewigkeiten machen und bald habe ich Urlaub.

Um eine Sache zu sagen: Mir geht es nicht darum, hier auf dicke Hose zu machen. Es gibt nur gerade im Bereich Speichermanagement bei Windows grundsätzliche Verständnisprobleme, die auch verständlich sind. Gute Doku ist rar und meistens teuer.

Viele Grüße,
TC

PatkIllA
2009-03-23, 10:48:49
Ich empfehle normalerweise auch, dass man da gar nichts dran rumstellen sollte, wenn man es selbst nicht beurteilen kann.

Du bist dann auch der erste, den ich treffe, der so eine DumpAnaylse gemacht hat. Und es gibt durchaus Situationen, wo du auch da die Ursache nicht wirst finden können. Schließlich teilen sich alle Treiber einen Kernelspace und man hat ja nur die Momentaufnahme im Dump.

Unter XP hat mich das Rattern der Platte und das zähe Verhalten nach dem Beenden eines intensiven Prozesses genervt und das ist weg seit dem Ausschalten der Pagefile. Mehr als 2GiB Speicher kann ein 32Bit Programm eh nicht nutzen (wegen mangelden Adressraums sogar noch deutlich weniger) und zwei Programme die je an die zwei GiB nutzen lasse ich nicht gleichzeitg laufen.
Schon klar, dass eine Dll, die genauso auf Platte liegt nicht ins Swapfile verschoben wird. Sie liegt ja sogar nur einmal im Speicher, selbst wenn sie von mehreren Programmen benutzt wird.
Und es ist halt nervig, wenn ich beim reaktivieren eines länger nicht genutzten Programss für ein paar MB Daten wieder Sekunden warten muss, aber die ganze Zeit noch gigabyteweise Speicher frei war. Wieder keine generelle Empfehlung aber so ist es bei mir (und auch einigen anderen).
Zumal das auch beim Minimieren von Fensterns vorkommt, obwohl ich nur mal kurz Übersicht schaffen wollte.

Welcher Prozess im BS technischen Sinne macht denn die Speicherverwaltung?

The Cell
2009-03-23, 11:04:07
Welcher Prozess im BS technischen Sinne macht denn die Speicherverwaltung?

Prozesse machen nichts. ;)
Threads machen.

Die Speicherverwaltung ist ein Teil der Ausführungsschicht und befindet sich in Ntoskrnl.exe.

Folgende Threads kümmern sich um alles:

Working Set Manager-Thread
Modified Page Writer-Thread
Zero Page-Thread
Dereference Segment-Thread
Mapped Page Writer-Thread
Process/Stack Swapper-Thread

Gruß,
TC

PHuV
2009-03-23, 16:35:33
Wenn der CP 1.7 für Gothic draußen ist werde ich nochmal ausprobieren wie sich Gothic verhält wenn die Auslagerungsdatei auf der Ramdisk ist.

Mich würden noch eure Erfahrungen zu diesem Thema interessieren

Warum machen sich die Leute immer alle doppelte Arbeit, obwohl es schon längst Theads dazu gibt? :rolleyes:

http://www.forum-3dcenter.org/vbulletin/showthread.php?p=4930833#post4930833