Mehr als du wirklich brauchst, ein unwichtiges RAM Problem!!

Hier kann alles mögliche diskutiert werden. Themen zu Purebasic sind hier erwünscht.
Flames und Spam kommen ungefragt in den Mülleimer.
Jake
Beiträge: 121
Registriert: 28.05.2005 04:10
Wohnort: Berlin

Re: Mehr als du wirklich brauchst, ein unwichtiges RAM Probl

Beitrag von Jake »

Hi,

mir geht es genauso.
Neptunar hat geschrieben:Meine Freundin spielt gerade Sims 2 an meinem Rechner und von den 2048MB (2x1024) Corsair Speicher sind noch über 1400 MB frei.
Damit ein Spiel auf den gesammten Arbeitsspeicher zugreif muß es dementsprechend programmiert sein. Die meisten Spiele habe eine maximale Grenze die unter 2GB liegt.
Das trifft auf fast alle neueren Spiele zu. Ich habe mich mal mit dem Thema beschäftigt und einiges aus dem Netz zusammengetragen.

Dabei ist rausgekommen, daß die Auslagerungsdatei bei 2GB Ram zwischen 768 und 1024 MB liegen sollte.
Wenn es dir nur um Spiele geht dann solltest du die 768MB nehmen. Wenn du aber Anwendungen benutzt die viel Speicher verwenden können, wie z.B. Profisoftware im Bereich Video, Grafik oder Audio dann soll man 1024MB nehmen.
Wichtig ist das die Anfangsgröße = Maximale Größe ist, da die dynamische Änderung der Auslagerungsdatei langsam ist.
ts-soft hat geschrieben:2 GB RAM ist zumindest bei XP, in den meisten Fällen, verschenktes Geld
Dem kann ich nur zustimmen. Ich habe mir lediglich 2GB zugelegt weil ich eine CAD-Software verwende die in der Lage ist die 2GB auch auszunutzen und auch mit weniger als 1GB nicht richtig läuft bzw. mit Einschränkungen im Annimationsbereich.
MfG Jake
Benutzeravatar
nicolaus
Moderator
Beiträge: 1175
Registriert: 11.09.2004 13:09
Kontaktdaten:

Beitrag von nicolaus »

Also was ts-soft schreibt ist so nicht ganz richtig!
Wenn man genügend RAM stecken hatt wie z.b. 2 GB und nicht so viele Programme laufen hat das diese Grenze von 2 GB überschritten werden muß dann braucht man KEINE Auslagerungsdatei und das System verlangsamt sich dadurch auch NICHT!!!

Erstens ist RAM immer schneller als HD und 2. wird so nicht laufend vom RAM auf HD geschrieben und wenn die Daten die ausgelagert wurden wieder benötigt werden erst wieder in den RAM heladen werden müßen. Genau das ist ja der punkt der es dann so langsam mach da die Daten die Ausgelagert wurden und von denen man dann mal wieder welche anfordert erst wieder in den RAM geladen werden müßen.

Ich hatte selber ne ganze zeit den MS Flugsimulator mit 512 MB RAM und ner Auslagerungsdatei von 1 GB laufen. Das laden und spielen war doch einige male recht ruckelig wenn daten aus der Auslagerungsdatei geladen werden mußten. Nachdem auf 2 GB RAM aufgerüstet wurde und die Auslagerungsdatei abgeschaltet wurde war auch das prob weg und wenn ich den Flusie nun laufen habe und mir im Taskmanager anschaue wieviel resourcen nun direkt im RAM genuzt werden versteht man auch das es mit viel RAM und keiner Auslagerungsdatei viel schneller geht.

Wäre ja auch recht komisch wenn Windows langsamer wird wenn keine Auslagerungsdatei vorhanden ist oder besser diese deaktiviert wurde, denn dann könnte ja gleich alles über diese gehen und man braucht keinen RAM.

Es ist aber richtig das dies auch immer von der Software abhängt und wie diese programmiert wurde.
Die meisten sind so entwickelt das sie ne bestimmte Prozentanzahl des freien RAM´s nutzen und alles was drüber ist wird versucht auszulagern. Bei einigen programmen wie z.b. PhotoShop kann man sogar einstellen wieviel RAM dem Programm zugesichert werden sollen das es so um ein viellfaches schnller läuft wie wenn die Auslagerungsdatei zu oft in anspruch genommen werden müßte.
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8808
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Beitrag von NicTheQuick »

Ich dachte bisher immer dieser Auslagerungsquatsch macht Windows
automatisch.
Aber was muss man denn in seinem Programm schreiben, dass er Daten
in einer Auslagerungsdatei verwaltet und nicht im RAM. Wenn ich doch mit
PB Speicher allokiere, dann wird das doch immer im RAM gemacht, oder?
Falls nicht, würde ich gerne wissen, wie man das in seinem eigenen
Programm unterbinden kann.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

http://www.pc-experience.de/wbb2/thread ... =2205&sid=
Gelegentlich hört man auch die These: schalte deine Auslagerungsdatei doch ab, du hast doch genug Arbeitsspeicher.
Davon möchten wir dringend abraten, denn der Effekt wäre in etwas so, als würde man dem Betriebssystem die Luft zum Atmen nehmen. Außerdem hätten viele speicherintensive Applikationen mit dieser Maßnahme erhebliche Probleme, von den aktuellen Games ganz zu schweigen.
Die einzige Alternative, die man noch in Betracht ziehen könnte, wäre die Einrichtung einer Ramdisk. Dafür ist aber sehr sehr viel Arbeitsspeicher nötig, d.h. nicht unter 1024MB.
Ist nur eine von sehr vielen Informationsquellen, wobei die meisten in etwas ähnlich lauten.

Selbst ein abschalten der Auslagerungsdatei bringt Windows nicht dazu, mehr RAM zu verwenden, sonder es wird die Einrichtung einer Auslagerungdatei anfordern. Siehe auch Beitrag von MVXA

Gruß
Thomas :mrgreen:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Beitrag von freedimension »

NicTheQuick hat geschrieben:Ich dachte bisher immer dieser Auslagerungsquatsch macht Windows
automatisch.
Aber was muss man denn in seinem Programm schreiben, dass er Daten
in einer Auslagerungsdatei verwaltet und nicht im RAM. Wenn ich doch mit
PB Speicher allokiere, dann wird das doch immer im RAM gemacht, oder?
Falls nicht, würde ich gerne wissen, wie man das in seinem eigenen
Programm unterbinden kann.
Ich glaube, da hast du was falsch verstanden. Klar macht Windows die gesamte Speicherverwaltung, d.h. du forderst Speicher an und Windows gibt Ihn dir in Form eines Pointers. Bei Speicherknappheit kann das aber auch schon einmal ein Plätzchen in der Auslagerungsdatei sein, der Speicher wird dann von Windows automatisch gemapt, du als Programmierer bekommst davon im Normalfall nichts mit.
Spiele usw. können davon unabhängig aber auch selbst danach schauen, wieviel Speicher sie verbrauchen um dann gegebenenfalls die Objekte welche am längsten ungenutzt im Speicher liegen zu löschen. Wann das geschieht liegt in der Macht des Programmierers.

So verstehe ich das zumindest, kann aber auch sein, dass ich auch noch Nachhilfe benötige ;)
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

freedimension hat geschrieben: So verstehe ich das zumindest, kann aber auch sein, dass ich auch noch Nachhilfe benötige ;)
Ist schon im grossen und ganzen richtig so :allright:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Beitrag von freedimension »

ts-soft hat geschrieben:Ist schon im grossen und ganzen richtig so :allright:
Was heißt hier "im grossen und ganzen"? :twisted:
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag von Zaphod »

das heißt: es ist exakt richtig so. ;)
Antworten