Die magische 3,1 GByte Grenze

Ich wollte mal fragen ob es empfehlenswert ist alle .esp und .esm Dateien außer Skyrim.esm mit TES5Edit zu cleanen.
Wer weiß vielleicht fange ich auch noch mal von vorne an denn ich habe auch wieder "zu viel gemoddet". :)
 
Das stimmt allerdings, die neue ENB funktioniert, was stabilität angeht wirklich fabelhaft - bisher noch keine abstürze :)
 
Eventuell funktioniert ja dieses Tool auch mit Skyrim. Ich habe zumindest für Dragon Age da diverse positive Berichte gelesen von solchen, die auch ein ähnliches Crash-Problem bei dem Spiel hatten.

Ich selber habe es noch nicht getestet.
 
Eventuell funktioniert ja dieses Tool auch mit Skyrim. Ich habe zumindest für Dragon Age da diverse positive Berichte gelesen von solchen, die auch ein ähnliches Crash-Problem bei dem Spiel hatten.

Ich selber habe es noch nicht getestet.

Das Flag ist doch schon gesetzt worden in einem Patch.
Mit dieser neuen ENB scheint scheint man das Problem ja offenbar in den Griff zu kriegen, dass die Texturen eben wieder allein Sache der Grafikkarte und deren Speicher ist.
 
Hat noch jemand das Problm das in Interioren Feuerstellen und Kerzen vieeeeeeeeeeeeel zu krass scheinen?! Also nicht die Helligkeit die davon ausgeht sonder das Feuer an sich...der Glow Effekt ist einfach zu doll!!!
(speziell Briesenheim!)

@ FortuneHunter:

Habe auch dieses Microstottern...beim reiten fällts extrem auf!

edit:
Ich habe mit der neuen DLL zwar keine Texturfehler aber genau den selben RAM Verbrauch wie vorher...und CTDs!!!!!!!
 
Zuletzt bearbeitet:
Geforce...
Hatte vorher kein Ruckeln in der Form....fataler finde ich aber eigentlich den selben Ram Verbrauch wie vorher :-(
Dachte schon die neue ENB wäre die Lösung aller Probleme!
 
Ich habe keine Microruckler mit einer GeForce GTX 680 MX mit ENB Version 0.192.

Normalerweise muss fast immer die ENB-Konfiguration an eine neue ENB-Version angepasst werden. Einfach warten, bis die großen ENBs nachziehen oder selbst an den Beleuchtungseinstellungen schrauben.

Bzgl. des RAM-Verbrauchs: Lass doch mal den Skyrim Performance Monitor bei dir laufen und mach vorher-nachher-Aufzeichnungen. Der gelbe Graph ist entscheidend.

Mittlerweile hat Boris die Version auch wieder aktualisiert:

Updated ENBSeries 0.192 for TES Skyrim without version change with bug fixes of previous version. Some new features disabled in this version, because they require radical changes in enbseries.ini for comfortable sharing of presets, so will activate them in next version.
Quelle


Das habe ich grad noch im ENB-Forum gefunden:

Found bug with adaptation not working, fixed and will be updated in future release.

Das erklärt die Überbeleuchtung bei ENB-Konfigurationen die Hell-Dunkel-Adaption benutzen.
 
Zuletzt bearbeitet:
Das weiß ich doch, alles schon gemacht. Der Performance Monitor hat mir ja die Ergebnisse geliefert die ich gerade anspreche :) ....ich hatte mit der alten DLL (wie die meisten) einen Ram Verbrauch von 600-800MB, jetzt klettert er wieder weit über 2GB!!! Wie sieht das bei euch aus???
 
Zuletzt bearbeitet:
Performance ist teilweise grottig mit dieser Lösung.
Deutlich höhere Ladezeiten und es gibt tatsächlich so ein Stottern und zwar deutlich.
Und der RAM-Verbrauch ist zwar mal deutlich unten, aber mal auch genauso wie ohne diese DLL.
Na mal sehen was noch daraus wird.
 
@Xgf:

Ich könnte auch fragen, ob Deine Grafikkarte nur ein Texturspeicher ist und sonst keine Funktion hat.
Die Grafikkarte muss noch folgendes bewältigen:
Grafikeffekte berechnen, Meshes vorhalten, Bildschirmausgabe etc. Auch für diese Funktionen wird Speicher benötigt.
Wenn das OS den Grafikspeicher mitverwalten würde, dann wäre auf 32bit Systemen bei 3,5 GByte Schluss. Den auch das Betreibssytem benötigt Speicher. Diese 3,5 Gbyte Grenze würde aber für Grafikkarte und Arbeitsspeicher gelten. Sprich eine 3 Gbyte Radeon, meine 4 GByte GTX680 oder eine Titan mit 6 Gbyte ließen sich unter einem 32Bit Betriebssytem nicht ansprechen.

Und bei Crossfire oder SLI würde es ganz übel aussehen, den dort hat jeder Grafikchip seinen seperaten Speicher. 2 Titan Grafikkarten im SLI-Verbund würden nicht funktionieren, da jede GPU ihre 6 GByte hat.
Aber grade SLI und Crossfire sind der Beweis, dass die GPUs den Speicher selbst verwalten. Würde dies nämlich über das OS funktionieren, dann würde nicht jede GPU ihren eigenen Speicher benötigen, sondern beide könnten auf den gleichen Speicher zugreifen.
Da aber die GPUs ihren jeweiligen Speicherbreich verwalten, muss jede einen eigenen Speicher haben.

Was Deiner Theorie aber am stärksten wiederspricht ist mein erster Screenshot. Sollte Deine Theorie zutreffen, dann müsste ich eine Spezialversion von Skyrim haben, den dort werden von RAM und VRAM zusammen 5,9 GByte genutzt. Dies wäre nicht möglich wenn Skyrim effektiv nur 4 GByte gesamt nutzen könnte.

Ach komm schon FortuneHunter. Das sind NICHT MEINE Theorien.

Befass dich bitte mal ein wenig mit OS Architektur. Es nennt sich VMM (virtual memory management). Das Konzept des virtuellen Speichers wurde 1956 vom Physiker Fritz-Rudolf Güntsch an der Technischen Universität Berlin entwickelt. VMM wird heute in nahezu allen modernen Betriebssystemen verwendet, auch im Windows (ab Win95).

http://de.wikipedia.org/wiki/Virtuelle_Speicherverwaltung

In Kürze: Das Betriebssystem (genauer der Memory Manager von OS) verwaltet den Speicher und stellt jeder Applikation lediglich einen Virtuellen Adressraum zur Verfügung. Bei einer Windows 32Bit App sind das Maximal. 4GB. Die Applikation – in unserem Fall Skyrim – hat keine Ahnung wo die Daten tatsächlich sind.

VRAM .. direct von Microsoft

To virtualize video memory, the video memory manager in Windows Vista assigns a virtual address range to every video memory resource. This range is conceptually similar to the copy that an application might create. However, the video memory manager manages the process more efficiently than the application might. The video memory manager uses the virtual address range to handle transitions or over-commitment of video memory. However, the virtual address range is typically unused on a system that has lots of video memory. As long as this virtual address range remains unused, no physical memory is allocated for it. In contrast, the system memory copy that is maintained in the older driver model is guaranteed to be fully populated with physical memory.

Die Hardware verwaltet gar nichts, die stellt zur Verfügung!

Was SLI angeht… per Zufall habe ich so ein Ding zuhause, schon seit 1998. Damals waren es noch 2 Voodoo2 Karten zusammen mit einer Matrox Mystique. Heute sind es zwei EVGA GTX 580 Hydrocopper.

Ich weiss zurzeit auch nicht, woher dein Gap kommt. Entweder das VRAM gehört doch nicht zu den Max 4GB einer 32Bit App oder dein MessTool misst Mist! Laut Microsoft gehört der VRAM dazu.

Mich würd‘s aber im Prinzip brennend interessieren, der Sache auf den Grund zu gehen. Den ECHTEN Grund und nicht irgendein unqualifiziertes blabla. Aber so wie hier, macht es mal wieder überhaupt keinen Spass….es nervt höchsten!
Hast du denn dein InGameMessTool schonmal verifiziert? Nimm ein VRAM Monitoring Tool und z.B. den RessourceMonitor von Windows und verifiziere doch mal deine Zahl.
 
Zuletzt bearbeitet:
Ich hoffe Dir langt ein Screenshot, denn leider zeigt der Resourcenmonitor nicht den VRAM-Verbrauch an, was aber GPU-Z leisten kann.



Dieses Bild ist direkt nach dem Raustabben aus Skyrim entstanden.
Ich habe GPU-Z mitprotokollieren lassen:

Nachstehend die wichtigsten Zeiten (Das die Zeiten stimmen, kannst Du an der Systemuhr auf den ersten Screenshot verifizieren):

1. Vor dem Starten von Skyrim und beim Start:



2. Beim laufen von Skyrim:



Wie gut zu sehen ist, verbraucht Skyrim 2.838.392 kByte was 2,697 GByte entspricht. Der Zuwachs an Grafikspeicher beträgt 1.986 MByte was 1,939 GByte entspricht (siehe Screenshots)

Das macht zusammen 4,636 Gbyte, was die Grenze von 4 GByte locker überschreitet.

Ich habe hier alle Effekte im NvidiaInspector ausgeschaltet um Ungenauigkeiten zu vermeiden und Skyrim nicht an die Grenze des Absturzes zu bringen.

Die Max-Grenze an Arbeitsspeicher ist für eine 32Bit Anwendung auf einem 32Bit Windows = 3 Gbyte mit gesetzen IMAGE_FILE_LARGE_ADDRESS_AWARE and 4GT ansonsten 2 GByte (Quelle: Memory Limits for Windows Releases: http://msdn.microsoft.com/en-us/library/aa366778(VS.85).aspx#memory_limits )
Bei einem 64bit Windows verschiebt sich das ganze auf 4 GByte.

Warum Skyrim selbst auf einem 64bit Windows schon bei 3,1 GByte aussteigt, kann eigentlich nur noch an der Engine liegen.


Was Du über den virtuellen Arbeitsspeicher schreibst/zitierst, stützt doch die Theorie, das die Texturen im Arbeitsspeicher abgelegt werden.

Übrigens zum Thema Grafikspeicher und der Verwaltung des selben: http://de.wikipedia.org/wiki/Grafikspeicher

Hier möchte ich besonders auf diese Passage hinweisen:

Flaschenhals Systembus

Ältere Grafikkarten geben Grafikberechnungen an die CPU ab. Durch höhere Auflösungen und mehr darstellbare Farben wuchs im Laufe der Zeit der Datenstrom zwischen GPU und CPU immer weiter an bis er durch die Leistungsfähigkeit des Systembusses ausgebremst wurde. Ein weiteres Problem war der benutzte Grafikspeicher. Dieser erlaubt keine gleichzeitigen Lese- und Schreibzugriffe. Der RAMDAC muss mit dem Auslesen warten, solange die CPU in den Speicher schreibt und umgekehrt. Auf modernen Computern ist der Systembus die kritische leistungsbestimmende Komponente; das zeigt sich insbesondere bei aktueller 3D-Grafik. Die folgende Beispielrechnung soll dies verdeutlichen.

  • Darstellung einer Szene in der Auflösung 1280 × 1024 Pixel mit 32 Bit Farbtiefe und 50 Bilder pro Sekunde
1280 × 1024 × 32 Bit × 50 1/s = 2097,152 MBit/s Diese ca. 2100 MBit pro Sekunde berücksichtigen nur den zur Monitorausgabe nötigen Datenstrom. Die gesamte eventuell anfallende Datenübertragung zur Bildsynthese trägt zu dem Wert nichts bei. Als Konsequenz daraus sollte die Nutzung des Systembusses auf ein Minimum verringert werden.

  • Alle zur Bildsynthese oder -ausgabe anfallenden Berechnungen werden von einer separaten und lokal von der CPU getrennten GPU vorgenommen.
  • Die GPU verfügt über eigenen und direkt erreichbaren Halbleiterspeicher. Die möglichst seltene Nutzung des Hauptspeicher sollte nur dann erfolgen, wenn der lokale Speicher nicht ausreicht.
  • Als verwendeter Halbleiterspeicher sollte kein normaler DRAM verbaut werden, da dieser den hohen Anforderungen der GPU nicht genügt. So erlaubt DRAM zum Beispiel keine gleichzeitigen Lese- und Schreiboperationen. Das ist für eine Grafikkarte wichtig, da der RAMDAC kontinuierlich Teile des Speichers ausliest während die GPU Ergebnisse in den Speicher schreibt.


Sollte das VRAM der Grafikkarte wirkllich in den bestehenden Arbeitsspeicher eingerechnet werden, dann wäre dieses hier unmöglich:

http://www.3dmark.com/3dm11/5979015

Den hier müsste Windows 7 schon beim booten abstürzen, da es 6 GByte VRAM in einen Adressraum von 4 GByte RAM einbinden soll.

Hier zum Vergleich die Ergebnisse meines Systems:

http://www.3dmark.com/3dm11/6890669




 
Zuletzt bearbeitet:
  • Like
Reaktionen: Lorneos
Geringfügig, aber ja, jedes Mod erhöht den Arbeitsspeicherbedarf. Schließlich müssen die Daten und Scripte irgendwo abgelegt werden, wenn von der CPU darauf zugegriffen werden soll.
 
  • Like
Reaktionen: Jambambo
@FortuneHunter ...Interessant Danke für die Mühe

Was Du über den virtuellen Arbeitsspeicher schreibst/zitierst, stützt doch die Theorie, das die Texturen im Arbeitsspeicher abgelegt werden.

Ja das habe ich ja schon geschrieben, dass dem eben doch so ist. Aber du hast mir jetzt bewiesen, dass der VRAM NICHT zu den möglichen 4GB zählen.
Nochmals mein Link.. diesmal in deutsch.. sogar verständlich übersetzt Hut ab :-D

http://support.microsoft.com/kb/940105/de
Aber hier steht auch warum das so ist

Vorhandene Spiele und andere Grafikanwendungen ordnen häufig virtuellen Arbeitsspeicher für eine Kopie der Videospeicherressourcen zu, die von der Anwendung verwendet werden. Diese Kopie wird von der Anwendung verwendet, um die Anzeige schnell wiederherzustellen, wenn die Inhalte des Videospeichers verloren gehen. So wird diese Kopie beispielsweise verwendet, wenn der Benutzer ALT+TAB drückt oder den Computer in den Ruhezustand versetzt.
Ich sehe dabei eine gewisse Ironie... man will ja heute immer alles gleichzeitig haben.... ich muss nicht ALT+TABen, wenn ich spiele.. von mir aus müsste das nicht so sein.

Du hast mir noch was gezeigt:

Ich habe mehr als genügend GPU/CPU Leistung, das Spiel läuft mit 60FPS Vsync. Trodem kam ich an eine Grenze. Texture nachladeruckler. Da sind halt nur 1.5 GB, da fehlen mir 600 MB im Vergleich zu deinen Screens. Es fing mich an zu nerven. Der Plan war, zwei 680er mit 4GB zu kaufen, aber die habe ich verpasst. Es gab nur 4Stück bei uns und die waren am nächsten Tag schon weg. Dann habe ich wenigstens schnelleres RAM besorgt respektive gemacht ;-) und das Problem zu 95% eliminiert. Und 2 EVGA WaKü Titan €1300 eine, die können mich mal.

Jetzt eh nicht mehr... dein 3.1 GB Problem werd ich nie haben, da ich nur 1.5 GB VRAM habe. Somit werden auch nur max 1.5 GB gespiegelt. Mein RevoDrive und mein RAM ist schnell genug, das nahezu auzugleichen... (obwohl ich ja nicht mal weiss, ob du wirklich absolut gar keine rucker hast, wenn du im gallop 150% von Einsamkeit nach Rifton reitest??)

Die software ist demnach garn nicht bereit für so viel VRAM.
 
Oh ich habe so einige Nachladeruckler auf dem Ritt, dass liegt aber wahrscheinlich an meinem hochgemoddeten System. Den meine arme CPU muss wahrhaft heldenhaftes leisten. Jedem Getier wird eine andere Textur verpasst (Automatic Variants), außerdem laufen einige Scripts im Hintergrund etc. Die kommt mit dem nachladen nicht mehr nach.

Mit der neuen ENB sind die großen Ruckler weg (also kurzes stocken des Spiels), aber dafür hab ich ein Microstottern, dass man denken könnte ich hätte 2 AMDs im Crossfireverbund installiert.

Auch nicht das Gelbe vom Ei.
Da ich sowieso gezwungen bin mein Skyrim neu zu machen (Festplattencrash der Festplatte auf der NMM und die ganzen Sicherheitskopien der Mods waren), werde ich mich etwas mehr zurückhalten und mal sehen, ob ich diese Grenze vermeiden kann.

Dank Deines Artikels weiß ich jetzt auch warum wir die Probleme mit Skyrim und den Speicher haben:

Dank der Einführung von DirectX 10 und des Windows-Anzeigetreibermodells (WDDM – Windows Display Driver Model) in Windows Vista müssen Anwendungen keine Kopien ihrer Ressourcen im Systemspeicher beibehalten. Stattdessen wird durch den Videospeichermanager sichergestellt, dass die Inhalte aller Videospeicherzuordnungen über Anzeigeübergänge hinweg beibehalten werden. Aus Kompatibilitätsgründen emuliert Windows Vista "Gerät verloren" (device lost) für DirectX-Versionen vor DirectX 10, um sicherzustellen, dass es keine für die Anwendung sichtbaren Änderungen des API-Verhaltens gibt.

Leider basiert Skyrim noch auf DirectX 9. Und dass haben wir mal wieder den Konsolen zu verdanken. Zum Glück hat das jetzt mit der PS4 und der XBOX One ein Ende, da beide auch auf DirectX 11 aufsetzen.
 
Zuletzt bearbeitet:
Was mich an der Sache interessiert ist wie das Spiegeln genau funktioniert.

Wenn die Texturen, die im RAM gespiegelt werden zu einem Zeitpunkt exakt die sind die im VRAM sind bringt das nichts. Sind im RAM aber auch Texturen die schon nicht mehr im VRAM sind können diese schneller erneut geladen anstatt sie von der Festplatte zu laden. Das könnte die Mikroruckler erklären, die die neue ENB Version verursacht.
 
Die neue ENB-Version scheint gar keine Texturen mehr im RAM abzulegen, sie läd sofort alles ins VRAM. Das kann man auch schön beobachten, wenn man den Skyrim Performence Monitor laufen lässt.

Ohne die neue ENB - Bei Laden eines Spielstandes klettert das RAM stetig (bei mir bis 2600) und das VRAM bleibt bei einem kleinen Wert (400-500). Bis das Spiel geladen ist, dann schnellt das VRAM plötzlich hoch (bei Aufbau der Umgebung).
Mit der neuen ENB - Es ist genau umgekehrt. Das RAM kletter nur auf einen kleinen Wert (500-700) und das VRAM steigt stetig auf einen großen Wert (ca. 2700 bei mir) an. Wenn es fertig geladen ist, steigt das RAM noch etwas, pendelt sich dann aber bei 1 GByte ein.

Das stottern wird immer stärker je schneller man unterwegs ist. Ich denke die CPU kommt nicht mehr mit dem laden von der Festplatte mit und stellt der GPU die Daten nicht rechtzeitig zur Verfügung. Ergo ruckelts.
 
Es müsste so ein Mittelweg geben, dass der RAM eben unter einer kritischen Grenze bleibt.
So zieh ich die alte Variante im Moment noch vor, mit reduzierten Texturen kann man es auch ganz gut im Griff haben, ohne das es wirklich schlechter aussehen würde.