Besserer Speicher bringt mehr Speed

Hier kann alles mögliche diskutiert werden. Themen zu Purebasic sind hier erwünscht.
Flames und Spam kommen ungefragt in den Mülleimer.
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

Besserer Speicher bringt mehr Speed

Beitrag von mk-soft »

Hi,

Statt den Arbeitsspeicher nur zu erweitern habe ich diesen komplett ausgetauscht.
Also den DDR2-667 (1GB) rausgemissen und 2*DDR2-800 (1GB) von G.SKILL ersetzt.
Ergebnis ist ca 30% mehr Speicherdurchsatz und das Verhältnis CPU zum Speicher hat sich vom 1/9 zu 1/7 verbessert.

Windows 2000, XP und so wie ich weiss auch Linux 32bit können nur* bis 3GB verwalten. Was macht man mit den Rest wenn man mehr hat?

FF :wink:
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

@mk-soft
>Windows 2000, XP und so wie ich weiss auch Linux 32bit können nur* >bis 3GB verwalten. Was macht man mit den Rest wenn man mehr hat?
Ich habe nicht so viel Ahnung, aber ich denke, den nicht erkannten Speicher kann man nicht nutzen.
Aber ich dachte Windows XP kann bis zu 4 GB RAM verwalten?

\\Edit:
Beispiel: Ist genauso mit Windows mit oder ohne Service Pack.
Also Windows ohne Service Pack hat man nur maximal 137 GB Festplattenspeicherplatz und den Rest kann man halt nicht nutzen.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag von Zaphod »

Der Rest schimmelt ungenutzt vor sich hin, was aber auch keine schädlichen Auswirkungen hat. XP kann auch nur 3GB, das liegt daran, dass Adressraum auch für anderes Benötigt wird und ist ohne Aufwändigere Speicherverwaltung nicht zu umgehen. Nur XP 64bit kann mehr.
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8809
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 »

Soviel ich weiß, kann Vista nur bis zu 3 GB RAM nutzen, Linux kann aber mehr.

Letztes hatten wir eine Vorlesung zum Thema "Laufzeitanalyse von
Echtzeitsystemen". Jetzt ist zwar ein PC mit Multitasking-System kein
Echtzeitsystem, aber es war schon interessant. Dabei ging es Optimierung in
Zusammenhang mit Cache und Arbeitsspeicher. Um ein paar Beispiele zu
berechnen, nahmen wir an, dass ein Prozessortakt gebraucht wurde um aus
dem Cache zu lesen und 100 um aus dem Arbeitsspeicher zu lesen. Und das
ist keineswegs unrealistisch. Also um Daten aus dem Arbeitsspeicher zu
laden braucht man 100 mal länger als sie aus dem Cache zu laden.

Und das liegt nur daran, dass der RAM-Takt um einiges langsamer ist als der
Prozessortakt. Würden beide gleich schnell sein, würde das Verhältnis Cache-
zu RAM-Zugriffszeit stark gegen 1:1 gehen.

Das erklärt auch, warum bei mk-soft auf einmal alles viel schneller geht.
Benutzeravatar
AndyX
Beiträge: 1272
Registriert: 17.12.2004 20:10
Wohnort: Niederösterreich
Kontaktdaten:

Beitrag von AndyX »

Nein, egal unter welchem Betriebssystem, Windows oder Linux, mit 32 Bit-Systemen kann man maximal 4294967296 Bytes ansprechen (= die größtmögliche Adresse, die ein Unsigned Long speichern kann). Also maximal 4 GB, wobei unter WinXP32/Vista32 nur 3,5GB nutzbar sind (keine Ahnung wo der Rest hin verschwindet). Unter 64 Bit-Systemen sind dann natürlich mehr verfügbar, 17179869180 GB wenn ich mich nicht verrechnet habe.
Benutzeravatar
Thalius
Beiträge: 476
Registriert: 17.02.2005 16:17
Wohnort: Basel / Schweiz

Beitrag von Thalius »

Unter Linux32 kann man bis zu 64 GB Ram ansprechen .

Kernel- Processor ->
64GB (HIGHMEM64G)

Select this if you have a 32-bit processor and more than 4
gigabytes of physical RAM.


Thalius
"...smoking hash-tables until until you run out of memory." :P
Benutzeravatar
dllfreak2001
Beiträge: 2925
Registriert: 07.09.2004 23:44
Wohnort: Bayern

Beitrag von dllfreak2001 »

Inoffiziel ist das auch mit Win32 möglich da gibbet ne Option, hab ich meine ich mal im Augenwinkel mitgelesn.
I´a dllfreak2001
Benutzeravatar
Laurin
Beiträge: 1639
Registriert: 23.09.2004 18:04
Wohnort: /dev/eth0

Beitrag von Laurin »

Und jetzt mal meinen Senf, damit hier völliges Chaos ausbricht ^^

Windows XP und Linux können pro Prozess nur 3 GB Speicher zuweisen. Insgesamt können sie aber 4 GB verwalten. Angenommen, man startet hintereinander zwei Prozesse, die soviel Speicher anfordern wie möglich.
Dann sieht das so aus, dass Prozess A 3 GB RAM bekommt und Prozess B den Rest, der noch übrig ist.

Bei Linux kann man im Kernel eine Funktion aktivieren, dass es nicht an max. 4 GB gebunden ist. Bei Windows XP heißt diese Funktion PAE (Physikalische Adresserweiterung).
Dennoch können sie weiterhin jedem Prozess nur max. 3 GB zuweisen, egal wieviel RAM sonst noch in der Kiste steckt.

Bei 64 Bits OS sieht das antürlich anders aus.
Now these points of data make a beautiful line.
And we're out of beta. We're releasing on time.
Benutzeravatar
Thalius
Beiträge: 476
Registriert: 17.02.2005 16:17
Wohnort: Basel / Schweiz

Beitrag von Thalius »

Unter Linux ist die verteilugn frei wählbar ( wenn nötig sogar 3.8 GB adressierbar ). Pro programm können in einem highmemory system also effektiv 3.8 GB angesprochen werden. jedes Prob das vom scheduler durchegearbeitet wird hat also seinen eiegenen adressraum. WIn ist dieser fix...

Gratz zu neuem Ram MK :allright:
"...smoking hash-tables until until you run out of memory." :P
Benutzeravatar
PureLust
Beiträge: 1145
Registriert: 21.07.2005 00:02
Computerausstattung: Hab aktuell im Grunde nur noch 'nen Lenovo Yoga 2 Pro im Einsatz.
Wohnort: am schönen Niederrhein

Beitrag von PureLust »

Windows 32-Bit kann aus dem Grunde von den maximal 4GB adressierbarem RAM nur ca. 3GB ansprechen, weil es bestimmte Adressbereiche für andere Zwecke frei hält und in diese dann Speicher anderer Karten gemapped wird (wie z.B. der Speicher der Grafikkarte). So wird also im Grunde der Adressbereich des RAM-Speichers "nach oben" verschoben - so dass von den 4GB tatsächlich vorhandenem RAM nur noch 3GB im 32-Bit Adressbereich liegen.

Da die meisten Grafikkarten jedoch (noch) nicht über 1GB Arbeitsspeicher verfügen, ist der von Windows dafür freigehaltene Adressraum von 1GB recht hoch gegriffen.

Aus diesem Grund bieten einige BIOS-Versionen guter Mainboards die Möglichkeit der Adressbereich des RAM-Speichers weiter "nach unten" zu mappen - also unter die 1GB Grenze.
Schau mal in Deinem BIOS nach, ob Du dort eine Option "Adress mapping", "Memory mapping" oder Ähnliches findest.
Wenn Du diese aktivierst sollte es Dir möglich sein (je nach installierter Grafikkarte sowie sonstiger DMA-Hardware) knapp 3.5 GB unter Windows zur Verfügung zu haben.

Gruß, PL.
[Dynamic-Dialogs] - komplexe dynamische GUIs einfach erstellen
[DeFlicker] - Fenster flimmerfrei resizen
[WinFX] - Window Effekte (inkl. 'durchklickbares' Window)
Antworten