GPU-Beschleunigung in PixInsight: CUDA-Einrichtung und Performance-Benchmarks
Dieser Artikel ist aus Notizen der Jahre 2021 bis 2024 zusammengestellt; einige Tools, CUDA-Versionen und Einrichtungsabläufe wurden seitdem aktualisiert (insbesondere unterstützt PixInsight in seinen späteren Versionen mittlerweile eine Ein-Klick-Konfiguration), behalte beim Lesen also den zeitlichen Kontext im Auge.
Seit Prozesse auf Basis neuronaler Netze wie Sternentfernung, KI-Entrauschung und KI-Schärfung nach und nach Einzug in den PixInsight-Workflow gehalten haben, ist „Soll ich meinem Bearbeitungsrechner eine Grafikkarte spendieren?“ zu einer sehr praktischen Frage geworden. Dieser Artikel bündelt meine Benchmark- und Einrichtungserfahrungen mit GPU-Beschleunigung aus den letzten Jahren—unter anderem, warum man eine GPU will, wie man sie aktiviert, wie viel Zeit sie spart und wie sich die einzelnen Plattformen unterscheiden.
Warum du GPU-Beschleunigung brauchst
Die Prozesse in PixInsight, die derzeit GPU-Beschleunigung unterstützen, sind vor allem jene, die auf Berechnungen mit neuronalen Netzen setzen: StarNet++, StarNet 2, StarXTerminator (SXT), NoiseXTerminator (NXT) und BlurXTerminator (BXT). Lässt du diese Prozesse allein auf der CPU laufen, werden die Wartezeiten sehr beträchtlich, vor allem wenn die Bildgröße wächst.
Ein Beispiel, das es einem richtig vor Augen führt, ist die Sternentfernung im Stapelbetrieb: Wenn man Kometen mit der neueren Methode bearbeitet, muss man aus jedem noch nicht integrierten Kometen-Frame einzeln, im linearen Zustand, die Sterne entfernen. Bei über 200 Frames mit 9 Megapixel dauert das mit einer RTX 3060 Laptop-Version zur Beschleunigung nur rund 20 Sekunden pro Frame; verlässt du dich allein auf die CPU, lässt dich die Gesamtzeit an deinen Lebensentscheidungen zweifeln.
Hat man GPU-Beschleunigung einmal genutzt, gibt es im Grunde kein Zurück mehr.
Als ich CUDA zum ersten Mal erfolgreich aktivierte
Ende 2021, nachdem ich Stunden damit verbracht hatte, verschiedene Versionen von NVIDIA CUDA, cuDNN und TensorFlow zu testen, gelang es mir endlich, die GPU (NVIDIA RTX 3060) zur Unterstützung der Sternentfernung einzuspannen:
- StarXTerminator brauchte nur etwa 15 Sekunden;
- StarNet++ weniger als 10 Sekunden;
um die Sterne aus einem einzelnen Frame zu entfernen. Gegenüber der reinen CPU war der Unterschied dramatisch.

Wie man sie aktiviert: von der manuellen Einrichtung zur Ein-Klick-Installation
Der frühere Weg: Dateien manuell ablegen
In der Anfangszeit bedeutete das Aktivieren der GPU-Beschleunigung, die passenden Versionen von CUDA, cuDNN, TensorFlow und so weiter selbst herunterzuladen und an den richtigen Stellen abzulegen. Die Einstiegshürde war nicht niedrig, und es galt nur für Nutzer unter Windows, die PixInsight installiert und eine NVIDIA-Grafikkarte mit CUDA-Kernen hatten. Nutzer von AMD-Grafikkarten (einschließlich integrierter Grafik) überspringen das getrost, und Linux-Nutzer müssen sich die Entsprechungen selbst zusammensuchen. Einmal eingerichtet, beschleunigte es StarNet, StarNet++, SXT, NXT und BXT enorm.
Das Ärgerliche war, dass man diese Dateien nach jedem Update von PixInsight oft neu ablegen musste, was leicht in Vergessenheit geriet.
Der aktuelle Weg: PIs integrierte Ein-Klick-Einrichtung
Anfang 2024 hatte sich die Lage dramatisch gebessert—jetzt fügst du in PixInsight einfach ein Update-Repository (Repository) hinzu und kannst die GPU-Beschleunigung direkt nutzen, ohne zusätzliche Installation oder Konfiguration. Das ist der Weg, den RC (Russell Croman), der Autor der XTerminator-Reihe, im PixInsight-Forum bereitstellt. Damals funktionierte diese Funktion nur unter Windows, die Linux-Version war noch in Entwicklung; und macOS brauchte diese Art von Einrichtung ohnehin nie.
Wie man bestätigt, dass die GPU wirklich die Arbeit macht
Willst du wissen, ob die GPU bei der Sternentfernung oder Entrauschung mit anpackt, gehst du unter Windows 10/11 so vor: Öffne den Task-Manager, wechsle zur Seite „GPU“ und wähle die Unterseite „CUDA“. Wenn bei den CUDA-Kernen eine Auslastung erscheint, wird die GPU genutzt (bei laufendem SXT siehst du zum Beispiel, wie die CUDA-Kerne auf 87 % Auslastung hochschnellen); rührt sich bei den CUDA-Kernen überhaupt nichts, dann wird die GPU nicht angezapft.

Performance-Benchmarks
High-End-CPU vs. Mittel- bis Low-End-GPU
Viele fragen: Wenn die CPU stark genug ist, braucht man dann überhaupt eine Grafikkarte? Ich habe eine High-End-CPU aus dem Consumer-Bereich (AMD R9-7950X) gegen eine Mittel- bis Low-End-Grafikkarte aus dem Consumer-Bereich (RTX 3060 12G) antreten lassen, mit PI 1.8.9-1 und SXT 2.05 AI 11 lite als Software:
- Erstes Bild, M1 (14.75MP): CPU-Sternentfernung 1 Minute 45 Sekunden; GPU-Sternentfernung 10,2 Sekunden.
- Zweites Bild, Webb NGC 3372 (123MP): CPU-Sternentfernung 12 Minuten 31 Sekunden; GPU-Sternentfernung 1 Minute 05 Sekunden.
Zwei Muster zeichnen sich ab: Je größer das Bild, desto ausgeprägter der Nutzen der GPU-Beschleunigung; und selbst wenn man eine High-End-CPU gegen eine Mittel- bis Low-End-GPU stellt, braucht die CPU für dieselbe Arbeit mindestens zehnmal so lange wie die GPU. Ist deine CPU kein High-End-Modell, wird der Abstand nur größer. Solange dein Workflow also das wiederholte Nutzen von KI-Prozessen erfordert, empfehle ich dir dringend, dir zumindest eine Mittel- bis Low-End-Karte der RTX-30-Serie zuzulegen.

Allein das Aktualisieren der CUDA-Software kann die Geschwindigkeit fast verdoppeln
Hier noch eine erstaunliche Entdeckung. Vor gut einem Jahr aktivierte ich zum ersten Mal die CUDA-Beschleunigung auf meinem RTX 3060 Laptop-Notebook, und gut ein Jahr später—ohne irgendeine Rechen-Hardware ausgetauscht zu haben (das Notebook lässt sich ohnehin nicht aufrüsten)—maß ich mit demselben Bild erneut, nachdem ich lediglich die betreffende Software aktualisiert hatte, und die Geschwindigkeit hatte sich beinahe verdoppelt.
Am Beispiel der Sternentfernung aus einem 120-Megapixel-Bild (PI 1.8.9-1, SXT 2.05 AI 11 lite, RTX 3060 Laptop 6GB):
- CUDA-Setup eins (CUDA 11.2.2, TensorFlow 2.6, cuDNN 8.2.1): etwa zweieinhalb Minuten.
- CUDA-Setup zwei (CUDA 11.8, TensorFlow 2.9, cuDNN 8.7, ZLib DLL x64 1.2.3): nur 1 Minute 20 Sekunden.
Wer CUDA also früh installiert und seither nicht mehr aktualisiert hat, sollte nicht vergessen, seine CUDA-Software zu aktualisieren. Du kannst dich an „Setup zwei“ oben orientieren—das ist, als würdest du die halbe Leistung geschenkt bekommen.

Desktop- vs. Laptop-Grafikkarte
Ich hatte zufällig sowohl eine RTX 3060 12G als auch eine RTX 3060 Laptop 6G zur Hand. Die Sternentfernungszeiten bei gleicher Softwareversion:
- RTX 3060 12G: 1 Minute 4 Sekunden;
- RTX 3060 Laptop 6G: 1 Minute 20 Sekunden.
Beide nutzen denselben Chip; die einzigen Unterschiede sind die Speicherkapazität und das Leistungsaufnahme-Design der Desktop- gegenüber der Laptop-Version, daher liegen die Sternentfernungszeiten nah beieinander. Was das Preis-Leistungs-Verhältnis angeht, ist ein Gaming-Laptop mit NVIDIA-Karte (damals zu einem Preis von rund 30.000 Taiwan-Dollar) eine ziemlich lohnende Wahl.

Selbst eine alte Mining-Karte macht sich bemerkbar
Zu Hause habe ich einen alten Rechner, vor etwa vier Jahren zusammengebaut (AMD R5-3600), dessen ursprüngliche Grafikkarte (R9-270) sich dem Ende ihrer Lebensdauer näherte. Ich habe im Netz eine Mining-Karte für unter 3.000 Taiwan-Dollar geschossen—eine NVIDIA GTX 1660s—und damit die Sternentfernung an einem Vollformat-Bild (etwa 60 Megapixel) getestet:
- Nur CPU: 5 Minuten 40 Sekunden;
- GPU: 51 Sekunden;
ein Unterschied von etwa dem 6,6-Fachen. Auch wenn die 1660s nur etwas über 1.400 CUDA-Kerne hat, ist die eingesparte Zeit dennoch erheblich. Solange du Operationen wie Sternentfernung, KI-Entrauschung und KI-Schärfung wiederholt ausführst, ist GPU-Beschleunigung eine lohnende Investition.

Wie sich die Plattformen unterscheiden
Ob KI-Prozesse GPU-Beschleunigung nutzen können, wird über Betriebssysteme und Hardware hinweg nicht einheitlich unterstützt. Ich habe die Situation für die drei Plattformen Windows, Mac und Linux zusammengetragen (einige Mac-Testergebnisse stammen von einem Mitstreiter):
- Windows + NVIDIA: Ist es einmal eingerichtet, kannst du CUDA aufrufen, um SXT, BXT, NXT und StarNet allesamt per GPU zu beschleunigen.
- Apple-Silicon-Macs (etwa M1 / M1 Ultra): BXT und NXT rufen ohne jede Einrichtung automatisch Metal für die GPU-Beschleunigung auf; SXT nutzt im Betrieb nur einen Teil der CPU-Ressourcen und zapft die GPU nicht an; und bei StarNet 2 musst du auf die experimentelle Version auf der offiziellen Website umsteigen (nur im Kommandozeilen-CLI-Modus), um die GPU-Beschleunigung erfolgreich zu nutzen.
- Intel-Macs: StarNet kann nur die CPU nutzen; SXT, BXT und NXT können GPU-Beschleunigung nutzen, und das funktioniert sogar mit einer AMD-GPU.
Auf der Apple-Silicon-Plattform unterstützen Prozesse wie SXT die GPU-Beschleunigung nativ, sodass ihre Leistung ungefähr mit „Windows + NVIDIA-CUDA-Beschleunigung“ gleichauf liegt. Und was Linux auf einem PC betrifft, kann auch dieses die GPU aufrufen, um die Berechnung zu beschleunigen.

Fazit
Blickt man auf die Veränderungen dieser letzten Jahre zurück: Die GPU-Beschleunigung hat sich von einer Hardcore-Einrichtung, bei der „man Stunden damit verbringt, CUDA-Versionen aufeinander abzustimmen“, zu „PI erledigt es integriert mit einem Klick“ entwickelt; immer mehr Prozesse lassen sich beschleunigen, und selbst eine spottbillige alte Mining-Karte kann ein Mehrfaches an Geschwindigkeit bringen. Wenn dein Workflow stark auf KI-Prozesse setzt, ist eine Mittel- bis Low-End-NVIDIA-Grafikkarte (oder ein Apple-Silicon-Mac) so gut wie unverzichtbar.