Projektgruppe: High Performance Network Simulation

Veranstaltung:

Weitere Informationen:

  • Studienabschnitt: Bachelor Informatik
  • Voraussetzungen: Systemnahe Programmierung; Java-Kenntnisse
  • Fachbereich: BA-INF 051
  • Aufwand: 2.0 S + 4.0 P / 10.0 CP

Motivation:

In den letzten Jahren erobern Multiprozessor- und Multikernsysteme zunehmend den Markt. Entsprechend steigen auch die Anforderungen an Software (und an die Programmierer). Es ist abzusehen, dass sich diejenigen Anwendungen durchsetzen werden, die von der parallelen Rechenpower profitieren können, d.h., intern z.B. durch Multithreading Berechnungen auf mehreren Kernen ausführen und dadurch schneller sind. Um dies zu erreichen, müssen jedoch kritische Herausforderungen wie Synchronisation, Partitionierung und Lastausgleich geschickt gelöst werden.

In der Projektgruppe werden wir uns dem parallelen Rechnen in einer besonders anspruchsvollen Domäne widmen, nämlich der parallelen Netzwerksimulation mobiler Funknetze. Hier ist es nicht möglich, das Programm einfach in verschiedene unabhängige Komponenten aufzuteilen und diese ohne Interaktion parallel zu berechnen. Ganz im Gegenteil: Durch den Funkverkehr können sich die Netzteilnehmer prinzipiell beliebig beeinflussen, so dass eine fortwährende Kommunkation und Synchronisation zwischen den parallelen Berechnungen nötig ist. Ebenfalls ist nicht gesagt, dass alle Rechenkerne immer gleich viel zu tun haben, so dass sie sich ggf. gegenseitig ausbremsen können. Es kann durchaus passieren, dass - je nach simuliertem Netzwerk - eine Simulation auf vier oder acht Rechenkernen plötzlich sogar langsamer ist als eime sequentielle Simulation auf nur einem Rechenkern.

Konkret werden wir uns mit verschiedenen Verfahren zur Synchronisation parallel arbeitender Threads beschäftigen und diese in einem Java-basierten Netzwerksimulator implementieren. Die Skalierbarkeit der Verfahren werden wir auf einem 16-Kern-Server (der eigens für diese Projektgruppe beschafft wurde) testen, miteinander vergleichen und am Ende den "Sieger" küren.

Geplanter Ablauf:

bis Ende April 2009Anmeldung per E-Mail an peschlow AT cs.uni-bonn.de
Anfang Mai 2009erstes Treffen und Verteilung der Seminar-Themen
Mitte Juni 2009Abgabe der Seminarausarbeitung
Anfang August 2009Blockseminar (1 Tag)
August/September 2009Blockpraktikum (4 Wochen Vollzeit)
Mitte Oktober 2009Abschluss-Workshop