RAM-Laufwerk - Geschwindigkeit?

Dani77

Experte
Thread Starter
Mitglied seit
13.09.2014
Beiträge
554
Ort
::1
Mich interessiert wie schnell ein (DDR5) RAM Laufwerk sein könnte.

System z.B. : Eine aktuelle Intel CPU mit Z790 Mainboard und 4x 64 GB DDR5 Arbeitsspeicher = 256 GB Arbeitsspeicher.
(Kingston Fury Renegade KF560C36-64 - gibt es schon, oder soll es bald geben?)

Das System bekommt 32GB Arbeittspeicher und das RAM Laufwerk wird 224 GB gross.

Welches Dateiensystem sollte unter Linux für ein RAM Laufwerk verwendet werden? EXT4? Oder ein ganz Anderes?

Wenn auf dem RAM Laufwerk eine z.B. 100 GB gross Datei liegt, diese dann auf dem RAM Laufwerk kopiert wird, als eine neue weitere andere Datei, mit welcher Geschwindigkeit würde dieser Vorgang ablaufen können?

Betreibt jemmand von euch soetwas oder kann das in etwa anhand der Technischen Daten bestimmen wie schnell (GB/s) es sein könnten?

Welche Geschwindigkeit hätte es bei einem System mit 4 Kanal Speicheranbindung (C422 mit DDR4 und höhere Chipsätze dann mit DDR5) ?
 
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
Welche Geschwindigkeit hätte es bei einem System mit 4 Kanal Speicheranbindung (C422 mit DDR4 und höhere Chipsätze dann mit DDR5) ?
Ich kann dir jetzt keine genaue Angaben zu diesem Punkt geben, zudem es von vielen weiteren Faktoren abhängt, aber auf elektronischer bzw. Hardwareebene kannst du folgende grundsätzliche (!) Annahmen über Geschwindigkeiten von "Speichermedien" treffen:

Cache Speicher --> RAM --> SSD --> HDD (wie gesagt nur grob/grundsätzlich zur Orientierung, es gibt auch SSD, die langsamer als HDD sind, etc.)

Heutzutage, zu Zeiten von schnellen SSD und 64GB/128GB/256GB RAM, macht ein RAM-Cache aus meiner Sicht wenig Sinn. Der Aufwand und die Nachteile (flüchtiger Speicher --> Datenverlust bei Crash) rechtfertigt das imho in sehr wenigen Fällen.
Bedenke auch, dass immer mehr Software großen RAM sinnvoll adressieren und cachen kann, vor allem dein OS. Ich bin mir nicht sicher, ob du mit einem RAM-Cache die "Schwuppdizität" merklich beeinflussen kannst. Vielleicht hat HW-Luxx Lust und Laune mal zu diesem Thema einen Test+Artikel zu veröffentlichen.
 
Die Frage ist, was willst du mit sowas erreichen?

Ich kann dir nicht sagen, wie schnell sowas konkret mit DDR5 wäre, aber ich habs praktisch mal mit DDR4 ausprobiert unter der Idee das ein Minecraftserver doch eigentlich schneller laden können müsste, wenn der gesamte Server samt Map auf einer RAM-Disk liegt. Tuts nicht, sowas von gar nicht. Also praktisch nicht messbar.
Die Idee dabei wäre gewesen, das die Random-Zugriffe schneller wären. Was aber nichts daran ändert, das der PC die Daten trotzdem erstmal laden muss. Das was auf der RAM-Disk liegt, ist für den PC/das OS nämlich nicht im RAM, sondern eben auf einer Disk (auch wenn die eben schon im RAM liegt) und muss erst in den "richtigen" RAM geladen werden.

Welchen Sinn sollte es haben, von einer 100GB großen Datei im RAM eine zweite Kopie im RAM anzulegen? Die Kopie wäre zwar theoretisch schnell erstellt, aber was hat man dann davon? 100GB in einem flüchtigen Speicher... wenn der PC abkackt ist alles weg.
Abgesehen davon, das man gerade zum Kopieren einer 100GB-Datei eben keine Random-Zugriffe braucht, sondern sequentiell zugreifen kann, was auf einer aktuellen SSD sowieso schon mit 8-10Gb/s geht. Also selbst von einer SSD auf einer SSD wäre das in ~15 Sekunden erledigt. Sofern man nicht ein Dateisystem verwendet, das erstmal gar keine wirkliche physische Kopie erzeugt, sondern erst schreibt, wenn die Pseudokopie tatsächlich geändert werden würde.

Mit so ziemlich jedem halbwegs modernen OS werden Festplattenzugriffe ohnehin im RAM gecached. Also wenn du 256GB RAM in einem Rechner hast und davon nur 16GB als "richtiges" RAM benötigt werden, werden die übrigen 240GB mit der Zeit sowieso als Cache für Festplattenzugriffe genutzt.
 
Habe vor einiger Zeit mal mit Primocache für meine C SSD gespielt. Man kann damit schon sehr witzige Werte erreichen. Habe aber keinen Praktischen Nutzen für gehabt, hab es dementsprechend nicht eingesehen entsprechende Lizenzkosten zu zahlen. Das war mit 8GB DRAMcache @ 7400c34 + WD Black SN770 1TB + 13600kf:

primocache.jpg
 
Welches Dateiensystem sollte unter Linux für ein RAM Laufwerk verwendet werden? EXT4? Oder ein ganz Anderes?

Ich möchte auf die Gentoo Wiki verweisen https://wiki.gentoo.org/wiki/Tmpfs

Mein Einzelfall mit Gnu Gentoo Linux seit der Erstinstallation von 2006.
Ich verwende es schon sehr lange zum compilieren, eine erhebliche Zeitreduzierung, d.h. indirekt man sieht es ist viel schneller, siehe https://wiki.gentoo.org/wiki/Portage_TMPDIR_on_tmpfs

Einige Ordner die ich über die Jahre als temporäre Lint Ordner identifiziert habe und dann in den RAM gelegt habe.
Code:
roman@Sienna_Cichlid ~ $ mount |grep tmpfs
none on /run type tmpfs (rw,nosuid,nodev,relatime,mode=755,inode64)
udev on /dev type devtmpfs (rw,nosuid,noexec,relatime,size=10240k,nr_inodes=8165828,mode=755,inode64)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,noexec,inode64)
tmpfs on /var/tmp/portage type tmpfs (rw,nosuid,nodev,noatime,mode=775,uid=250,gid=250,inode64,huge=always,x-mount.mkdir=775)
tmpfs on /var/tmp type tmpfs (rw,nosuid,nodev,noatime,inode64)
shm on /dev/shm type tmpfs (rw,nosuid,nodev,noexec,relatime,inode64)
none on /tmp type tmpfs (rw,nodev,noatime,inode64,huge=always)
none on /home/roman/Downloads type tmpfs (rw,noatime,size=65337956k,inode64,huge=always)
none on /home/roman/.cache/thumbnails type tmpfs (rw,nodev,relatime,uid=2608,gid=1005,inode64)
none on /home/roman/.cache/winetricks type tmpfs (rw,nodev,relatime,uid=2608,gid=1005,inode64)
none on /home/roman/.cache/fontconfig type tmpfs (rw,nodev,relatime,uid=2608,gid=1005,inode64)
none on /home/roman/.cache/wine type tmpfs (rw,nodev,relatime,uid=2608,gid=1005,inode64)
none on /home/roman/.cache/youtube-dl type tmpfs (rw,nodev,relatime,uid=2608,gid=1005,inode64)
none on /home/roman/.cache/yt-dlp type tmpfs (rw,nodev,relatime,uid=2608,gid=1005,inode64)
none on /home/roman/.cache/mesa_shader_cache type tmpfs (rw,nodev,relatime,uid=2608,gid=1005,inode64)
none on /home/roman/.cache/fontconfig type tmpfs (rw,nodev,relatime,uid=2608,gid=1005,inode64)
tmpfs on /run/user/2608 type tmpfs (rw,nosuid,nodev,relatime,size=6533792k,nr_inodes=1633448,mode=700,uid=2608,gid=1005,inode64)


Wenn auf dem RAM Laufwerk eine z.B. 100 GB gross Datei liegt, diese dann auf dem RAM Laufwerk kopiert wird, als eine neue weitere andere Datei, mit welcher Geschwindigkeit würde dieser Vorgang ablaufen können?

Ich denke da wurde der Zusammenhang nicht verstanden.

Ich verwende seit mindestens 10 Jahre keinen Linux Swap mehr mit Gentoo Linux. (was ein swap ist, bitte in den üblichen Linux Büchern nachlesen, usw.)

Ich habe es einmal geschafft im letzten Jahr meine 64 GiB DDR5 RAM mittels tmpfs vollzubekommen. Da ich natürlich keinen SWAP hatte und das restliche System weniger als 300 bis 500 MB freien RAM hatte, war im Grunde die Kiste im Zustand "eingefroren". Wenn man immer Dateien in den RAM lädt und diesen dann nicht leert, hat man dann "memory exhaustion". D.h. kein freien RAM. Der Dateimanager bemängelt kein Platz zum Reinkopieren der Dateien. Man kann nur so viele Dateien in den RAM laden wie auch verfügbarer RAM vorhanden ist. Deshalb machte es auch Sinn bei Gnu linux fürher in der technologischen Steinzeit mit einem Pentium 1 und 128MiB RAM einen SWAP zu haben.

Um auf die Frage zurückzukommen.

Wenn 100GB im RAM liegen, muss man zumindest mehr als 100GiB RAM verbaut haben. Wenn man dann noch mehr Dateien in den RAM laden will, so muss der RAM noch größer sein.

Die RAM Geschwindigkeit ist konstant im Grunde.


Es gibt einige shell Befehle die die Geschwindigkeit messen. Ob Sinnhaft oder nicht sei dahingestellt.

Es hat erheblichen Zeitgewinn wenn man nicht auf einer SSD oder HDD compiliert. Erneut verweis auf: https://wiki.gentoo.org/wiki/Portage_TMPDIR_on_tmpfs
Beitrag automatisch zusammengeführt:

Welche Geschwindigkeit hätte es bei einem System mit 4 Kanal Speicheranbindung (C422 mit DDR4 und höhere Chipsätze dann mit DDR5) ?

Ich habe von einem 8 Kerner der technologisch veraltet ist, einem Ryzen 5800X auf MSI B550 Gaming EDGE Wifi auf einen neueren 6 Kerner gewechselt.
Die Zeitdauer zum compilieren ist ungefähr ähnlich vom Ryzen 7600X.

Die Software ermittelt keine externen Störfaktoren, wo der User roman auch mit der Kiste nebenbei gearbeitet hat oder wo mehrere Pakete gleichzeitig compiliert wurden.
Jegliche Zusatzsoftware wie google-chrome usw. verfälscht die ermittelte Zeitdauer.
D.h. es ist im Grunde sinnlose Datensammelwut. Es sind Zeitwerte aus dem Alltag wo im Hintergrund die Pakete compiliert wurden und das System aktualisiert wurde

Auch berücksichtigt die Software nicht den Fakt, dass ich manchmal die CPU Frequenz mittels governour runtergesetzt habe auf eine niedrigere Frequenz.

--

sei auf die AIDA Benchmark screenshots verwiesen die es sehr oft gibt auch in diesem Forum. AIDA ist eine Windows Software welche die "Ram Geschwindigkeit" ermittelt.
Beitrag automatisch zusammengeführt:

Heutzutage, zu Zeiten von schnellen SSD und 64GB/128GB/256GB RAM, macht ein RAM-Cache aus meiner Sicht wenig Sinn.

Das wird auch der Grund sein warum es diese Anleitung gibt, oder? https://wiki.gentoo.org/wiki/Portage_TMPDIR_on_tmpfs
Beitrag automatisch zusammengeführt:

Ich kann dir nicht sagen, wie schnell sowas konkret mit DDR5 wäre, aber ich habs praktisch mal mit DDR4 ausprobiert unter der Idee das ein Minecraftserver doch eigentlich schneller laden können müsste, wenn der gesamte Server samt Map auf einer RAM-Disk liegt. Tuts nicht, sowas von gar nicht. Also praktisch nicht messbar.

Da fehlt mir der Rest.

War es ein lokaler Server oder ein Netzwerkserver?
Welches Dateisystem wurde verwendet?

--

Man kann ja gerne 20GiB Alltagsdateien mal in ein tmpfs reinkopieren. Sync befehl benutzen. und dann die Zeit ermitteln wie lange es dauert inkl Sync befehl die dateien auf eine nvme oder SATA SSD zu kopieren.

Und dann kann man von SSD auf SSD kopieren.

Hinweis sync befehl vorher und nacher benutzen mit Zeitstempelermittlung.
 
Zuletzt bearbeitet:
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh