# Kann ich den DirectX Shader Cache unter Windows gefahrlos löschen

Der DirectX Shader Cache enthält Shader, die kleinen Programme, die eine Grafikkarte ausführt, nachdem Windows sie kompiliert hat, damit Spiele und Apps sie nicht erneut kompilieren müssen. Er lässt sich gefahrlos löschen, und Windows bietet das in seinen eigenen Bereinigungswerkzeugen an. Der Haken ist, dass der nächste Start ihn neu aufbauen muss, Spiele laden daher eine Weile langsam oder ruckeln. Leeren Sie ihn, wenn er wirklich Platz belegt oder Sie ihn für beschädigt halten, und nicht als routinemäßige Wartung.

## Wo er liegt

Der System-Cache liegt unter `%LOCALAPPDATA%\D3DSCache`, mit einem Ordner darin für jeden Cache. Auch Grafiktreiber und Spiele führen eigene:

| Pfad unter Ihrem Benutzerordner | Besitzer |
| --- | --- |
| `AppData\Local\D3DSCache` | Windows DirectX |
| `AppData\Local\Microsoft\DirectX Shader Cache` | Windows-DirectX-Pipeline-Cache |
| `AppData\Local\NVIDIA\DXCache`, `AppData\Local\NVIDIA\GLCache` | NVIDIA |
| `AppData\LocalLow\NVIDIA\PerDriverVersion\DXCache` | NVIDIA |
| `AppData\Local\AMD\DXCache`, `AppData\Local\AMD\VkCache` | AMD |
| `AppData\Local\Intel\ShaderCache`, `AppData\LocalLow\Intel\ShaderCache` (aktuelle Treiber) | Intel |
| `AppData\Local\VulkanCache` | Vulkan |

Welche davon existieren, hängt von Ihrer Grafikhardware ab. Steam führt einen Cache pro Spiel in seiner eigenen Bibliothek, siehe [Steams Shader-Cache](/de/windows/blog/steam-shader-cache-windows). So messen Sie den System-Cache:

```powershell
$p = "$env:LOCALAPPDATA\D3DSCache"
[math]::Round((Get-ChildItem $p -Recurse -Force -File -ErrorAction SilentlyContinue | Measure-Object Length -Sum).Sum / 1MB, 1)
```

Die Zahl ist in MB.

## Wann das Leeren hilft

| Beobachtung | Leeren? | Warum |
| --- | --- | --- |
| Fehler, Abstürze oder Ruckeln, die nach einem Treiberupdate begannen | Einen Versuch wert | Ein veralteter oder beschädigter Eintrag kann die Ursache sein, und der Neuaufbau ersetzt ihn |
| Der Cache ist auf viele Gigabyte angewachsen und Sie brauchen den Platz | Ja | Er entsteht neu, aber nur für Spiele, die Sie erneut spielen |
| Ein Spiel ruckelt beim ersten Durchgang durch jeden Bereich | Nein | Das ist der Cache, der gefüllt wird, und Leeren lässt es erneut passieren |
| Allgemeine Trägheit des PCs | Nein | Das hat damit nichts zu tun |
| Routinebereinigung | Nicht nötig | Sie zahlen den Neuaufbau für wenig Gewinn |

## So leeren Sie ihn

Der eingebaute Weg für den System-Cache:

1. Öffnen Sie **Einstellungen › System › Speicher › Temporäre Dateien**.
2. Kreuzen Sie **DirectX-Shadercache** an und lassen Sie den Rest, wie Sie ihn haben wollen.
3. Wählen Sie **Dateien entfernen**.

Die [Datenträgerbereinigung](/de/windows/blog/disk-cleanup-vs-storage-sense-windows) (`cleanmgr`) hat dieselbe Option. Windows registriert ihn als Bereinigungshandler, `D3D Shader Cache`, und das Test-ThinkPad hatte ihn ebenfalls.

Von Hand: Schließen Sie Ihre Spiele und Grafikwerkzeuge, öffnen Sie `%LOCALAPPDATA%\D3DSCache` mit `Win + R` und löschen Sie den Inhalt. Überspringen Sie alles, was in Benutzung ist. Löschen Sie bei dem Cache eines Treibers den Inhalt des oben genannten Ordners bei geschlossenem Spiel. Die **Shader Cache Size** der NVIDIA-Systemsteuerung begrenzt nur, wie groß er werden kann.

## Was danach zu erwarten ist

Beim ersten Start jedes Spiels werden Shader erneut kompiliert. Manche Spiele zeigen einen Fortschrittsbalken, andere ruckeln, wenn Sie sich durch neue Bereiche bewegen, bis der Cache gefüllt ist. Wie lange das dauert, hängt vom Spiel und Ihrer Hardware ab und kann Minuten betragen. Beurteilen Sie das Ergebnis nicht nach der ersten Sitzung.

## Was Sie lassen sollten

- Leeren Sie ihn nicht vor einer Spielsitzung oder einem Benchmark. Er ist dann am langsamsten.
- Planen Sie das nicht ein. Er ist kein Müll, der sich auf schädliche Weise ansammelt, und ein Cache, der immer leer ist, bedeutet ständiges Kompilieren.
- Löschen Sie nicht die Ordner des Treibers außerhalb der oben genannten Pfade. `C:\Windows\System32\DriverStore` und die Installationsordner des Treibers sind keine Caches.
- Erwarten Sie nicht, dass er ein Spiel mit beschädigten Dateien repariert. Dafür gibt es die Überprüfungsfunktion des Launchers.

## Wo Mole hilft

**Bereinigen** in Mole for Windows listet diese Caches mit Namen, darunter **DirectX Shader Cache**, **DirectX Pipeline Cache** und die oben genannten Ordner von NVIDIA, AMD und Vulkan, dazu Intels älteren `Local`-Ordner, jeweils mit Größe. Den `LocalLow`-Ordner, den aktuelle Intel-Treiber nutzen, listet Mole nicht. Sie sind zunächst nicht angekreuzt, und Empfohlene lässt sie weg, weil jedes Spiel dann seine Shader erneut kompilieren muss. Kreuzen Sie einen an, wenn Sie entschieden haben, dass sich dieser Preis lohnt. Steams Caches pro Spiel erscheinen auf dieselbe Weise, und der NVIDIA-Cache in `ProgramData` braucht Administratorrechte. Den Rest des Ordners, in dem sie liegen, behandelt [was Sie in AppData löschen können](/de/windows/blog/appdata-folder-what-can-delete).

## Häufige Fragen

### Ist es sicher, den DirectX Shader Cache zu löschen?

Ja. Windows baut ihn neu auf. Der Preis ist langsameres Laden oder etwas Ruckeln in Spielen beim nächsten Start.

### Verbessert das Löschen des Shader-Caches die Leistung?

Meist nicht, kurzfristig wird sie schlechter. Es hilft, wenn ein beschädigter Cache Fehler verursacht oder wenn Sie den Speicherplatz brauchen.

### Wo wird der DirectX Shader Cache gespeichert?

In `%LOCALAPPDATA%\D3DSCache`. NVIDIA, AMD, Intel und Steam führen eigene Caches in anderen Ordnern.

### Warum kommt der Shader-Cache immer wieder?

Weil Spiele und Apps beim Laufen Shader erneut kompilieren. Dafür ist er da, es ist also kein Zeichen, dass die Bereinigung gescheitert ist.

### Sollte ich den Shader-Cache nach einem Treiberupdate leeren?

Nur wenn nach dem Update etwas nicht stimmt. Treiber bauen meist selbst auf, was sie brauchen, und das Leeren ist ein vernünftiger Schritt, wenn Sie Fehler oder Abstürze sehen.


Canonical: https://mole.fit/de/windows/blog/directx-shader-cache-windows
