was ich gar nicht nach voll ziehen kann ist die tatsache das heute ein pc oftmals über deutlich mehr ram verfügt als das spiel braucht, warum lädt man in so einem fall nicht einfach daten im vorraus?
Witzig. Ich habe vor Jahren mal eine 2 GB RAM Disk erzeugt und Mafia als komplettes Spiel reingepackt und gestartet. Funktioniert, aber Ladebildschirme gibt es immer noch und sie stottern kurz an denselben Stellen. Gegenüber der doch recht schnellen Festplatte als ganz ursprünglich, war der Geschwindkeitsgewinn doch eher gering. Ich meine: Wir reden von HDD vs. RAM und das zu Zeiten, wo so 80 MB/s sequenziell ein guter Wert war.
Jetzt habe ich so viel RAM, dass ich so manches Spiel von dort ausführen könnte... und SSDs. Es ist eine reine Spielerei, aber interessant zu beobachten, was das theoretisch schnellste Medium im Rechner leisten könnte. Wobei SSDs mit PCIe 4.0+ mit direkter Anbindung zur CPU wohl mit einem Datei- und Betriebssystem dazwischen wohl ähnlich gut auf Ladebildschirmen sind. Ein Instant ins Spiel geht einfach nicht. Witzigerweise selbst das alte Age of Empires 2 zeigt seinen Ladebildschirm. Vermutlich einfach, weil es zu den Übergängen gezwungen wird. Einblenden, Ausblenden, Spiel.
Ich kann nicht erklären, was Programme und Spiele auf ihren Ladebildschirmen machen. Ich finde jedoch einigermaßen erfrischend, wenn die Ladebildschirme kurz oder interaktiv sind und ggfs. entfernte Objekte im Nachhinein noch nachladen. Das Kaschieren von Ladebildschirmen mit situativ passenden Kamerafahrten finde ich durchaus sehr geschickt gestaltet.
Gleiches haben wir seit Ewigkeiten bei Windows. Hier hat MS nur die Option genutzt den Ram komplett zu nutzen aber es nicht so prominent anzuzeigen dass die Leute sich nicht aufregen.
Speicherverwaltung ist ja schon etwas kompliziertes. In der einfachen Programmierung kenne ich auch erst mal nur allokierten Speicher. Caches und sofort freizugebener Speicher sind schon nette Konzepte, aber müssen in der Anwendung auch behandelt werden. Keine Ahnung, wie das funktioniert.
Wo Windows natürlich einhaken kann, sind Disk Zugriffe. Dateien in den RAM saugen und dann bei Bedarf direkt parat zu haben, war zumindest in HDD Zeiten ein gewaltiger Boost. Merkt man teilweise auch, wenn man einen (verdammt lahmen Explorer) startet, schließt und wieder startet. Es geht ein Stück schneller.
Linux macht das ja auch gerne. Alles in den RAM ziehen, und dann wegschreiben. Das merke ich immer bestens an meiner SMR Festplatte. Die puffert auch noch einmal. Bis das Betriebssystem dann den Sync als erfolgreich meldet und ein "sicheres Entfernen" möglich ist, können noch Minuten vergehen.
Mein großer Wunsch an Ladebildschirme wäre aber auf jeden Fall, dass sie die FPS begrenzen bzw. gar nicht in den 3D Modus wechseln. Der MS Flight Sim hat während des Downloads der Spielinhalte die GPU permanent heiß gehalten. Ebenso Forza bei der Shader Kompilierung. Die CPU arbeitet, es wird effektiv ein Standbild mit Ladebalken angezeigt, was auch ein Mikrocontroller übernehmen könnte und die GPU rendert 144 Frames davon mit entsprechender Abwärme, Geräuschkulisse und natürlich Energiebedarf.
Daten von RAM in den VRAM zu schieben lässt sowohl CPU als auch GPU eigentlich kalt, wenn es darum geht. Aber sich eine effiziente und vernünftige Ressourcennutzung zu wünschen, ist vergebene Hoffnung. Optimieren muss man nicht. Die Hardware kann das schon und wenn nicht, dann eben Upscaling und Frame Generation. Ist ja egal, dass wir 2 km weit Rendern, obwohl in 20m eine Nebelwand ist.