Fysiek en Virtueel geheugen in Windows 10


Hoe werkt het fysiek en virtueel geheugen in Windows 10

Een Nederlandse vertaling van het artikel van Sushovon Sinha vind je op onze OneDrive.

Als slotconclusie is deze niet onbelangrijk als je van plan bent iets anders aan te schaffen:

RAM ontwikkelde zich als buffer tussen de lage snelheid HDD en de high speed processor. RAM kan in de toekomst vervangen worden als de snelheid van de harde schijf of SSD, de snelheid van de RAM kan bereiken. Momenteel is de opslagtechnologie geavanceerd naar Solid State Drives (SSD) en SD-kaarten die aanzienlijke snelheid, robuustheid en voor mobiele apparaten ook miniaturisatie vereisen die nodig zijn . Maar deze SSD-drives kunnen de RAM niet effectief vervangen vanwege hun beperkte schrijfcyclus-duurzaamheid, die de uiteindelijke levensduur bepaalt. Ten einde de levensduur tot een minimum van 5 jaar te verbeteren heeft een SSD een ingebouwde controller die de schrijfcycli gelijkmatig verdeelt over al zijn bruikbare ruimte. Als een SSD wordt toegepast om als RAM te simuleren, zal deze strategie zal echter het leven van SSD’s niet verlengen, omdat de schrijfcycli overweldigend groot zijn in RAM. Immers objecten zoals webpagina’s, apps en data worden de hele tijd gemaakt of bewerkt. In feite moet het RAM als buffer fungeren voor alle objecten die worden opgeslagen van opslaglocaties, ofwel in web / netwerk / lokale opslag.

Er is nog een andere mogelijkheid dat RAM uiteindelijk wordt samengevoegd met de cache van de processor, wanneer de technologie voldoende geavanceerd is voor het produceren (met verdere miniaturisering) van lage energie-verbruikende geheugenchips, die haalbaar zijn om de verzadigingsgrootte in het systeemontwerp te bereiken. In het huidige systeem blijft het doel van het uitvoeren van processen nog steeds verschillend van het doel van de harde schijf, namelijk om gegevens op te slaan en opgeslagen procesbestanden naar geheugen te sturen.

De uitzondering is de page file (aanwezig op de HDD of SSD) en fungeert als een secundaire cache wanneer de geheugenbehoefte van processen hoger is dan het geïnstalleerde fysieke geheugen. Vanwege de trage responstijd van een harde schijf in relatie tot geheugensnelheid is het paginabestand nooit een echte vervanging voor RAM en wordt alleen toegepast als een noodmaatregel om geheugenruimte vrij te maken. Het vergroten van de grootte van het page file verbetert de prestaties van het systeem niet.

Met name deze beschouwing is reden om een maximale grootte van RAM toe te passen en zo mogelijk een SSD niet te gebruiken als page file. Je kan dit dus het beste aan Windows 10 overlaten.

De 4 GB geheugengrens en 2 TB opslagruimte limiet in 32-bits systemen, maakt een enorme sprong in 64-bits systemen.  De maximale capaciteit van RAM en harde schijf, die momenteel ondersteund kan worden in een high-end systeem, is vele malen groter. Zo maken 64-bits systemen alle toekomstige technologische ontwikkelingen in de komende decennia mogelijk.

How to measure VAS with FSUIPC


measuring-vas-fsuipc2.pngYou can measure the status of the VAS using FSUIPC and place the measurement on screen.

If you don’t know what VAS is, please read first this post :: How Memory is Managed by the OS.
Further you can read all about Memory issues in this category.

With FSUIPC you can measure the Available FS memory (as it is called in the FSUIPC Offset Status.pdf). With the offset code 024C with Type S32 you measure the Available Virtual Address Space in kilobytes. This value is updated every 10 seconds.

The Available VAS + the Virtual Size of the process Prepar3D.exe equals ± 4GB as being the total VAS space for each 32 bits process. With other words: the  4GB VAS space minus the virtual size of the process Prepar3D.exe equals the remaining available virtual address space. When this VAS space is consumed…you get an OOM error message.vas-maxed-out2.png

How to show Available VAS on screen.

  1. In Prepar3D open Add-ons – FSUIPC and select tab Logging.
  2. Check: IPC reads  in Log Details and FS Window (or FS Title Bar) in Display to
  3. Fill Offset = 024C and Type =32 in the Specific value checks
  4. Close with OK
  5. You can drag and resize the green FS Window bar as desired to any convenient place on the screen. Once configured in FSUIPC it will appear again at next start.

measuring-vas-fsuipc.pngYou could also place the information in the FS Title Bar for a better reading result.

The value in the Title bar is read as 2643028 x KB=2.643 MB …as we speak of 2.6 GB.vas-maxed out3.PNG

How could you reach an OOM situation on startup?


vas-maxed-out1.png

In the image above you see the development of a coming OOM:: Out of Memory situation of the virtual address space. When a value of 4096 MB  (4GB) is reached, you get this message:vas-maxed-out2.png

How could you reach an OOM situation on startup?

start-scenario.pngThere are 2 possibilities for start after you have activated prepar3d.exe. Either the previous flight starts or the Prepar3D® Training Scenario Setup screen is activated.

When scrolling through the list of airplanes, textures are loaded. The texture map pages textures out if they have not been used in 10 seconds.  

Unfortunately, the timer used to age texture has not been initialized yet when the scenario start-up screen loads.  

The textures for the aircraft you looked at, but didn’t pick, will stay loaded until roughly 10 seconds after the simulation finishes loading.  This makes it much easier to run out of memory on startup.  

If you go to the vehicle select screen, after the sim is loaded up, the textures should page out ok while in the preview screen.  You can still have issues if you scroll too fast though because of the 10 second limit.  

For the next release, Update 2.5,  textures will page out in both versions of the vehicle select screen and the textures will page our much more quickly.

Issue is soved in V2.5

Source: Prepar3D®


How to prevent?

Select_vehicle-01.pngAt startup of the sim with the Prepar3D® Training Scenario Setup screen the virtual space is used for approx. 0.8 GB.

When scrolling through the list of airplanes with its different textures, each airplane will consume an amount of VAS.

At the moment you reach the 4GB limit you get the OOM error message.

If you won’t run the risk of OOM at startup, you could reduce the number of airplanes in the folder ../Simobjects/Airplanes, so you have little to choose (little to scroll) OR you start the sim with the Previous Flight which automatically runs at startup.

If you want to change the aircraft then, just go to Vehicles select screen and select the vehicle. You could also reduce the risk when you make a list of your Favorites. (Hit the asterix on the line of your choice and check the asterix “Show Only Favorites”).

According to Prepar3D® this should be improved in the next release.

If you want to watch the development of your VAS with FSUIPC click HERE to read how you can view on screen.