Was ist Embarrassingly parallel?

Was ist Embarrassingly parallel?

Eine Rechenaufgabe ist peinlich parallel (auch erfreulich parallel oder perfekt parallel genannt), wenn sie sich auf natürliche Weise in einzelne parallele Verarbeitungsaufgaben aufteilen lässt. Viele Bildverarbeitungsaufgaben wie Raytracing und Raycasting von 3D-Bildern laufen peinlich parallel. Bei diesen Aufgaben können Teile des Bildes separat berechnet werden, ohne mit den anderen zu interagieren. Diese einzelnen “Blöcke” des Bildes können unabhängigen Prozessoren zugewiesen werden, z. B. den CUDA-Kernen auf einer NVIDIA-GPU. Jeder Kern kann seinen Chunk gleichzeitig verarbeiten, was den Prozess erheblich beschleunigt. Wenn die parallele Verarbeitung abgeschlossen ist, werden die Chunks zusammengefügt, um das endgültige gerenderte Bild zu erstellen.

Rechts abgebildet ist eine Illustration einer NVIDIA-GPU, die mit mehreren CUDA-Kernen ausgestattet ist, die jeweils einen Teil eines Raytrace-Bildes parallel verarbeiten.

Beispiele für peinlich parallele Aufgaben

Neben dem Rendern von 3D-Bildern umfassen andere peinlich parallele Aufgaben:

  • Genetische Programmierung – Bei der genetischen Programmierung werden Algorithmen in Gruppen „weiterentwickelt“, indem vorherige Generationen kombiniert und mutiert werden. Jede dieser Personen wird unabhängig voneinander parallel verarbeitet.

  • Mandelbrot-Menge – Ein Fraktal, bei dem jeder Punkt einzeln und unabhängig von den anderen berechnet wird.

  • Monte-Carlo-Algorithmen – Eine breite Palette von Rechenaufgaben, die durch Pseudozufallsstichproben einzelner Elemente verarbeitet werden.

  • DFT (Diskrete Fourier-Transformation) – Eine weit verbreitete Technik zur Verarbeitung gleichmäßig verteilter Abtastwerte einer Funktion oder eines Signals. Wird häufig in DSP (digitale Signalverarbeitung) verwendet und basiert auf der Arbeit des französischen Mathematikers Jean Fourier.

  • Brute-Force-Kryptografieaufgaben – Eine Reihe von kryptografischen Problemen, z. B. Proof-of-Work-Algorithmen, die viele ähnliche Berechnungen durchführen, die effizient parallel ausgeführt werden.

CPU-Begriffe, Bildverarbeitung, NVIDIA, Programmierung, Signal, Task

Neueste Artikel
Vielleicht möchten Sie lesen

LEAVE A REPLY

Please enter your comment!
Please enter your name here