Prefetching
Prefetching ist eine Optimierungstechnik, die Daten abruft und in den Arbeitsspeicher lädt, bevor diese Daten tatsächlich angefordert werden. Wenn es erfolgreich ist, verbessert Prefetching die Leistung und verringert die Latenz, weil eine Anwendung Daten nicht von einem langsameren Speicherlaufwerk lesen muss, sondern stattdessen auf einen schnelleren Speicher-Cache zugreifen kann. Dazu muss das System jedoch genau vorhersagen, welche Daten eine Anwendung oder ein Prozess im Voraus benötigt. Prefetching kann zu einer Verschwendung von Ressourcen führen, wenn das System falsche Vorhersagen trifft.
Um vorherzusagen, welche Daten es vorab laden muss, analysiert ein Computersystem Nutzungsmuster und ermittelt, wie Benutzer und Anwendungen normalerweise Daten anfordern. Dazu können einfache Algorithmen zum Abgleichen von Mustern oder fortgeschrittenes maschinelles Lernen verwendet werden, um zukünftiges Verhalten vorherzusagen. Die meisten Betriebssysteme verwenden diese Informationen, um die Startzeiten von Anwendungen zu verkürzen, indem sie die von diesen Apps benötigten Daten vorab laden. In Windows heißt diese Funktion SuperFetch, in macOS Application Launch Services. Mobile Betriebssysteme wie Android und iOS verwenden Prefetching ebenfalls, um die Startzeiten von Apps zu verkürzen.
Software-Anwendungen und Hardware-Geräte können beide integrierte Prefetching-Funktionen enthalten. CPUs verwenden Prefetching häufig, um den nächsten Satz von Ausführungsanweisungen in den Cache zu laden. GPUs laden Texturbilder vorab in den VRAM, wenn das System davon ausgeht, dass sie zum Rendern kommender Einzelbilder benötigt werden. Datenbanksysteme laden häufig Daten vorab, die eine Abfrage möglicherweise anfordert, bevor diese Abfrage ausgeführt wird. Webbrowser können sogar Daten von anderen Webseiten vorab laden, die von der aktuellen Seite aus verlinkt sind, und dabei Skripte, Bilder, Audio und Video herunterladen. So wird die nächste Seite schneller geladen, wenn Sie auf einen Link klicken.
Testen Sie Ihr Wissen