Das erwartet Dich
Die Arbeitsgruppe Informationsübertragung wurde innerhalb der Abteilung für Satellitennetzwerke des Instituts für Kommunikation und Navigation gegründet, um Verfahren zur zuverlässigen und sicheren Übertragung, Verarbeitung und Speicherung von Informationen zu erforschen. Auf der Grundlage eines soliden theoretischen Hintergrundes konzentrieren wir uns auf die Entwicklung von Algorithmen für Satelliten- und (allgemeiner) für drahtlose Kommunikationssysteme, wobei der Schwerpunkt auf Vorwärtsfehlerkorrekturverfahren, Techniken der physikalischen Schicht und (massivem) Mehrfachzugriff liegt. Zu den spezifischen Anwendungsbereichen, die derzeit im Fokus stehen, gehören Satelliten-/Mobilfunk-IoT-Systeme, drahtlose Verbindungen mit hohem Durchsatz (einschließlich optischer Freiraumkommunikation) sowie Kanäle mit hoher Mobilität und die zuverlässige Verarbeitung und Speicherung von Informationen.
Deine Aufgaben
- Konzentration auf die softwareseitige Implementierung eines Paket-Decoders (Peeling Decoder)
- Hauptziel ist den Decoder für eine moderne Plattform, bestehend aus einer ARM-basierten CPU und einer NVIDIA-GPU (CUDA, z. B. NVIDIA DGX), lauffähig zu machen und zu optimieren
- Fokusierung auf der reinen Programmierumsetzung zur Erreichung eines hohen Datendurchsatzes, nicht auf der mathematischen Codierungstheorie.
- Schreiben von performantem C-Code
- das Erproben von paralleler Verarbeitung mittels CUDA-Kerneln
- die effiziente Verwaltung des Zwischenspeichers (Cache)
die Position erfordert ein hohes Maß an Eigenständigkeit bei der praktischen Software-Entwicklung
-
Das bringst Du mit
- fortgeschrittene und solide Programmierkenntnisse in C/C++
- starkes Interesse an paralleler Programmierung (CUDA) und/oder hardwarenaher Software-Optimierung
- erste Erfahrungen mit Speicherhierarchien, Cache-Management o. Ä. sind von Vorteil
- ein hohes Maß an Selbstständigkeit, Eigeninitiative und Zuverlässigkeit
- gute Englischkenntnisse