Auto-Vektorisierung eines numerischen Kernels für AVX-512
Übersicht
Worum es bei diesem Projekt geht.
Du erhältst den Stencil-Solver (rund 1.200 Zeilen C++), eine Benchmark-Suite mit 8 Eingabegittern und Zugriff auf eine AVX-512-fähige Testmaschine. Diagnostiziere die Vektorisierungs-Blocker mit den Compiler-Berichten (-fopt-info-vec-missed bei GCC, equivalentes Flag bei Clang). Wende systematisch an: Loop-Restrukturierung, Alignment-Hinweise (restrict, alignas), und manuelle Auto-Vektorisierungs-Hilfen (#pragma omp simd oder __builtin_assume_aligned). Vergleiche die erzeugte Assembly vor und nach jeder Änderung über Godbolt. Messe Speedup und Energieverbrauch über RAPL-Counter. Liefere einen Pull Request, einen 8-seitigen Performance-Bericht und Mikrobenchmark-Skripte für die CI.
Das Briefing
Was Du tust und was Du zeigst.
Welche Loop-Restrukturierungen und Compiler-Hints erreichen auf einem realen Stencil-Solver mindestens 3x Speedup über Auto-Vektorisierung mit AVX-512?
Earning criteria — what you'll demonstrate
- Vektorisierungs-Blocker aus Compiler-Berichten systematisch diagnostizieren
- Loop-Restrukturierung (Tiling, Interchange, Unrolling) gezielt für SIMD anwenden
- Alignment- und Aliasing-Annahmen mit Sprache und Pragma korrekt kommunizieren
- Energieverbrauch als Kennzahl neben Laufzeit in die Bewertung einbeziehen
Studienpassung
Wo dies in Dein Studium passt.
Schärft dieselben Fähigkeiten, die Dein Studium von Dir erwartet.
Fähigkeiten
Fähigkeiten, die Du unter Beweis stellst.
Jede taucht auf Deinem verifizierten Zertifikat auf.
Karrieren
Berufe, auf die dies Dich vorbereitet.
Echte Berufsbezeichnungen. Echte Skill-Brücken. Wähle die, die Deinem Werdegang am nächsten kommt.
Karrierewege, die das aufbaut
Kanonische RollenNoch eine Sache