Bisherige Projekte
Projekt: Parallelisierung Bellman-Ford
In einem Seminar über C++ und Multithreading stand die Bellman-Ford-Parallelisierung als Abschlussarbeit auf dem Plan. Die Grundlage bildete ein Single-Thread Algorithmus, der analysiert werden musste. Mit diesem bestehenden Programm sollte so geschickt eine Parallelisierung eingebaut werden, die die Performance des Algorithmus enorm steigern sollte.
Hier siehst du auf einen Blick die Eckdaten des Projekts.
Zeitlicher Rahmen
Dauer:
2 Monate
Art:
Studienarbeit
Jahr:
2011
Auftraggeber
Name:
Universität Trier
Ort:
Trier
Branche:
Informationstechnik
Im Projekt
Projekttyp:
Anwendung
Meine Rolle:
Softwareentwickler
Agiles Team:
Ja
Projektdetails
Natürlich kann man mit den Eckdaten eines Projektes noch nicht so viel anfangen. Daher gibt es hier zum Projekt noch einige Details zur Anforderung, den besonderen Herausforderungen und den konkreten Aufgabenstellungen. Wenn du etwas noch genauer wissen möchtest, frag einfach bei mir nach, ich gebe dir gerne Auskunft.
Anforderungen
- Parallelisierung eines in C++ geschriebenen Bellman-Ford Algorithmus
- Beschleunigung der Performance des Single-Thread Algorithmus
- Anzeige des Ergebnisses mit den Informationen zu den Kantenkosten
Implementierung
- Analyse der Funktionsweise des Bellman-Ford Algorithmus (single-threaded)
- Implementierung einer Anwendung zur Parallelisierung eines bestehenden Bellman-Ford Algorithmus in C++
- Verwendung von mutex locks zur Steuerung der parallel laufenden Threads
- Berechnung der gesamten Durchlaufzeit des Algorithmus
- Visualisierung der Ergebnisse mit der Grafik-Bibliothek LEDA
Technologischer und methoder Projektrahmen
Hier kannst du konkret einsehen, mit welchen Technologien und Rahmenbedingungen ich in diesem Projekt zu tun hatte.
Technologischer Kern
Mit diesem technologischen Stack wurde die Anwendung implementiert und ausgeliefert:
- C++
- Mutex
- LEDA
Build, Test & Deploy
Zur Unterstützung, Qualitätssicherung und Automatisierung wurde folgendes genutzt:
- Visual Studio
- Bash
Sonstiges & Methoden
Weitere Aspekte des Projektes, wie z.B. Methoden, Konzepte, Protokolle oder Hilfstools:
- Multithreading
- Bellman-Ford
- Kürzeste Wege
- Algorithmus
- LaTex
Weiterführende Links
Hier findest du noch ein paar nützliche weiterführende Links zum Projekt.