Läuft dein System so wie es soll?

  • Verwendet darktable die Hardwarebeschleunigung meiner GPU oder läuft es nur auf der CPU?
  • Bremst eine falsche Einstellung meine Hardware aus?
  • Ich will eine höher auflösende Kamera kaufen – reicht mein System noch?
  • Ich nutze Linux – welche OpenCL-Treiber soll ich verwenden?

Mein System ist ok, aber wie kann ich in darktable flüssiger arbeiten?

Die Performance-Analyse hilft dir zu verstehen, was „unter der Haube“ passiert. Hier erklären wir die wichtigsten Konzepte dazu.

In dem folgenden Beitrag verwenden wir Begriffe wie CPU, (i)GPU oder (V)RAM. In unserem kleinen Hardware-Lexikon findest du die Erklärungen (im Zusammenhang mit darktable).

Exportgeschwindigkeit über darktable-cli ermitteln

Mit dem Tool DT-PA Performance Analyser kannst du die Exportgeschwindigkeit auf deinem System messen.

Ein performanter Export ist ein guter Indikator für die generelle Leistungsfähigkeit des Systems und stellt den Bezug zur Geschwindigkeit der interaktiven Bearbeitung in der Dunkelkammer her.

Schritte zur Durchführung der Analyse

  1. Lade die RAW & XMP Zip-Dateien herunter für:
    • 24MP – Der Standardfall für viele Kameras, bei dem moderne Systeme sehr kurze Exportzeiten erreichen sollten.
    • 61 MP – Ein Hochlast-Szenario für hochauflösende Sensoren, das Schwächen bei CPU, GPU und Speicherbandbreite deutlicher aufzeigt.
  2. Entpacke sie in ein Verzeichnis, in dem du die Analyse durchführen möchtest.
  3. Erstelle/Kopiere einen Befehl mit unserem Command Builder, damit dein System die notwendige Analyse für ein 24MP- oder 61MP-Bild durchführen kann.
  4. Führe den Befehl in einem Terminal aus:
    • Navigiere zu dem Verzeichnis, in das die Bilder entpackt wurden.
    • Führe den Befehl aus.
    • Habe etwas Geduld, bis der Befehl entweder erfolgreich abgeschlossen ist oder eine Fehlermeldung ausgibt.
    • Der Prozess erstellt eine Log-Datei im selben Verzeichnis, in dem sich die Bilder befinden.
  5. Gehe zum DT-PA Performance Analyzer und lade deine Log-Datei(en) hoch.
    • Dies liefert dir eine Analyse darüber, wie dein System mit Darktable arbeitet.
  6. Wenn du deine Ergebnisse mit anderen Systemkonfigurationen vergleichen möchtest, gehe zur entsprechenden Benchmark-Seite und nutze den „Add Log Files“-Button:

Nach dem Einlesen der Datei springt der Browser direkt zu deinen hinzugefügten Daten. Der Eintrag bleibt nur so lange erhalten, bis du die Seite wieder verlässt. Wir speichern auch keine Logs auf dem Server.

  • Dein System ist ähnlich schnell wie andere, aber es fühlt sich trotzdem langsam an? Dann einfach weiter zum nächsten Abschnitt.
  • Dein System ist deutlich langsamer? Wir erklären dir weiter unten mögliche Ursachen und wie du sie löst.

Die interaktive Bearbeitung in der Dunkelkammer

Je nach verwendeter Hardware ist die Bearbeitung in der Dunkelkammer rund 10x schneller.

Wenn du den genauen Wert wissen möchtest, kannst du unser Tool DT-RM Realtime Monitor verwenden (Anleitung). Es zeigt dir die genaue Zeit für jeden Bearbeitungsschritt an – in Echtzeit.

Über „Compare“ kannst du deine Log aus dem DT-PA Performance Analyser einfügen und direkten vergleichen.

Die Arbeitsgeschwindigkeit und Exportzeit sind stark von den verwendeten Modulen abhängig. Während Basis-Korrekturen (z. B. Belichtung) fast immer verzögerungsfrei laufen, können rechenintensive Module (wie Diffundieren & Schärfen, Chromatische Aberrationen oder Entrauschen) selbst auf leistungsstarker Hardware zu spürbaren Reaktionszeiten führen.

Ursachen für eine langsame Bearbeitung

Die Pixelpipe: Ein Fließband für Daten

Du kannst dir die Bearbeitung in Darktable wie ein Fließband vorstellen. Das Bild wird von Modul zu Modul gereicht (z. B. Entrastern -> Belichtung -> Weißabgleich -> Tone Mapping (z. B. AgX)).

Das Ziel ist es, das Bild einmal auf die Grafikkarte (GPU) zu laden, dort alle Schritte abzuarbeiten und das fertige Bild zu exportieren. Nicht alle Module lassen sich effizient auf der GPU ausführen, sondern verwenden stattdessen die CPU.

CPU-Only (kein OpenCL)

Moderne Bildbearbeitungsalgorithmen führen Millionen von Berechnungen pro Pixel durch.

  • Eine CPU hat wenige, sehr komplexe Kerne (z. B. 16 Kerne).
  • Eine GPU hat tausende simple Kerne (z. B. 4000 Shader-Einheiten).

Für die Bildbearbeitung, in der jedes Pixel parallel bearbeitet werden kann, ist die GPU der CPU meistens überlegen. Das folgende Beispiel zeigt den Unterschied: Ein Export, der auf der GPU 3 s dauert, kann auf der CPU 40 s benötigen.

Der „Ping-Pong“-Effekt (CPU vs. GPU)

Ein häufiger Flaschenhals für die Performance ist nicht zwingend eine zu langsame GPU, sondern der Transport von Daten zwischen GPU und CPU und die Berechnung auf der CPU.

  • Idealfall: Bild -> GPU -> Modul A -> Modul B -> Modul C -> Ausgabe.
  • Problemfall: Bild -> GPU -> Modul A -> CPU-Modul (Daten müssen zurück in den RAM) -> CPU rechnet -> Zurück zur GPU -> Modul C.

Ein einziges Modul, das nicht auf der GPU läuft (oder bei dem OpenCL deaktiviert ist), kann die gesamte Pipeline ausbremsen.

Die Abbildung rechts zeigt ein weiteres Beispiel für die Unterschiede der Verarbeitungszeit zwischen GPU und CPU.

Wann kommt es zu diesem Problem?

  • Das Modul hat keine OpenCL-Unterstützung: Die Bearbeitung erfolgt somit auf der CPU.
  • Die GPU hat zu wenig Speicher (VRAM) für ein Modul:
    Nicht jedes Modul kann Tiling (nächster Abschnitt) verwenden. Reicht der Speicher der GPU nicht aus, gibt es nur den Umweg über die CPU.

Tiling (Kachelung)

Grafikkarten haben sehr schnellen, aber begrenzten Speicher (VRAM). Ein 24-Megapixel-Bild belegt im VRAM während der Bearbeitung oft mehrere Gigabyte.

  • Was passiert? Wenn das Bild nicht am Stück in den VRAM der GPU passt, zerlegt Darktable es in Kacheln (Tiles).
  • Der Nachteil: Jede Kachel muss einzeln berechnet werden. Damit man keine Kanten sieht, müssen (meistens) die Kacheln überlappen („Ghosting“). Diese Überlappungsbereiche werden also doppelt berechnet.
  • Die Folge: Tiling ermöglicht zwar den Export großer Bilder auf kleinen Grafikkarten, kostet aber oft Performance. Eine Verarbeitung über die CPU ist trotzdem (deutlich) langsamer.

Die Treiber-Schnittstellen: Wer spricht mit der Hardware?

Darktable nutzt OpenCL (oder Nvidia CUDA), um mit der Grafikkarte zu sprechen. Doch wie OpenCL umgesetzt wird, macht einen Unterschied.

Beispiel: AMD RX 9060 XT mit 8 GB (gfx1200) – OpenCL-Mesa (RustiCl) vs. ROCm

Wichtig: Das Beispiel liefert keine Aussage darüber, ob ROCm generell schneller ist als OpenCL-Mesa (RustiCl)! Je nach System kann das unterschiedlich sein.

ROCm (Radeon Open Compute)

Dies ist AMDs moderner Ansatz für High-Performance-Computing unter Linux.

  • Vorteil: Oft sehr schnell und stabil bei neueren Karten (RX 6000/7000/9000 Serie). Nutzt die Hardware sehr effizient.
  • Nachteil: Offiziell nur für bestimmte Distributionen und Karten unterstützt, manchmal frickelig bei der Installation.

RustiCl (OpenCL-Mesa)

Ein neuerer, in der Sprache Rust geschriebener OpenCL-Treiber, der Teil des Mesa-Projekts ist.

  • Vorteil: Funktioniert oft „Out of the Box“ auf vielen Linux-Systemen und unterstützt auch ältere Hardware oder integrierte Grafikeinheiten (iGPUs), die von den proprietären Treibern nicht mehr gepflegt werden.
  • Performance: Inzwischen oft auf Augenhöhe mit den proprietären Treibern, manchmal sogar schneller bei spezifischen Aufgaben und Hardware.

Proprietäre Treiber (AMD Pro / Nvidia)

  • Nvidia: Hier gibt es kaum Alternativen. Der proprietäre Treiber ist extrem ausgereift und performant.
  • AMD Pro: Meist solide, aber unter Linux wird er zunehmend von ROCm oder RustiCl verdrängt.

Und wie hilft mir das jetzt weiter?

Die Analyse dient als Diagnose-Werkzeug: Wenn DT stockt oder der Export zu lange dauert, siehst du hier sofort, welche Komponente (CPU, GPU oder RAM) der Flaschenhals ist. Damit kannst du gezielt dort ansetzen, wo deine Hardware limitiert oder ein Grafiktreiber fehlt (CPU only).

Handlungsmöglichkeiten in darktable

  • OpenCL aktivieren
  • Module temporär deaktivieren: Schalte rechenintensive Module, die für den Look im Moment nicht entscheidend sind (z. B. Diffundieren oder Schärfen, Entrauschen, Chromatische Aberrationen), erst ganz am Ende der Bearbeitung ein oder lass sie ganz aus. Das hält die Vorschau flüssig.
    Wichtig: Die Reihenfolge der Module in der Pixelpipe von DT ist fest vorgegeben. Auch wenn du ein Modul „später“ einschaltest, wird es an der technisch korrekten Stelle berechnet – es lohnt sich also, die „schweren Brocken“ bis zum Schluss deaktiviert zu lassen.
  • OpenCL-Treiber (Linux/AMD): Teste, ob deine AMD-Karte mit dem ROCm-Treiber oder dem neueren RustiCl-Stack besser läuft. Ein einfacher A/B-Test der Exportzeit bringt hier schnell Klarheit.

Mit dem DT-RM Realtime Monitor hast du alle wichtigen Informationen auf einem Blick und das bei jedem einzigen Arbeitsschritt – in Echtzeit.

  • Device: Zeigt dir an ob und welche Art von OpenCL angezeigt wird (z.B. RustiCL, ROCm, Cuda, …).
  • Die Namen der Module ist farblich Codiert: Blau = GPU, Lila = CPU

Bei diesem Beispiel könnte man cacorrectrgb und diffuse temporär deaktivieren.

Einstellungen der Hardware – iGPU

iGPU-Speichermanagement: Falls du keine dedizierte Grafikkarte verwendest, weise der iGPU im BIOS mehr System-RAM zu. Während 4 GB für einfache Bearbeitungen reichen, sind 8 GB oder 16 GB bei hochauflösenden Sensoren und komplexen Modulen deutlich schneller.

Fragen zu diesem Thema? Diskutiere mit uns im Forum!

Letzes Update: Februar 12, 2026