Aufgabenstellung

Übersicht
Aufgabenstellung
Vorgehen
Download
Selber testen
JavaDoc
Lizenz
 
Credits

Java Thread Skalierung

Fachliche Schwerpunkte

Parallele und verteilte Systeme. Software-Entwicklung für "Mehr Prozessoren"-Maschinen respektive "Multi Core"-CPUs.

Einleitung / Ausgangslage

In den letzten Jahren hat die Informatik einen enormen Performance-Zuwachs erlebt. Die höhere Performance wurde vor allem mit Hilfe von CPUs mit stetig gesteigerten Taktraten erreicht.

Bald wird man an dem Punkt angelangt sein, wo die physikalischen Grenzen den Takt vorgeben. Dies haben die weltweit führenden CPU-Hersteller AMD und Intel bereits erkannt. Beide Hersteller haben so genannte Multi-Core CPUs angekündigt respektive bereits im Programm. Eine altbekannte Alternative dazu sind Multi-Prozessor-Systeme.

Doch was nützen all diese Systeme, wenn sie nicht richtig ausgelastet werden können? Um einen einzelnen Prozess auf mehreren CPUs respektive CPU-Cores parallel laufen lassen zu können, braucht es spezielle Tools (Compiler, u.s.w). In dieser Arbeit soll diese Thematik ganzheitlich beleuchtet werden um letztendlich einen Output zu generieren, der Software Entwicklern eine Hilfe sein soll.

Aufgabenstellung

Die Aufgabe soll die Möglichkeit und Skalierbarkeit von Anwendungen auf aktueller Multi-Core/Multi- Threading Hardware ausloten.

Dies soll auf zwei Ebenen geschehen:

  • Betriebssystem-Ebene (WindowsXP und/oder UNIX)
  • Code Ebene (Java eventuell C++)

Die Arbeit soll die Analyse verschiedenster Parameter auf unterschiedlicher Hardware sowie Betriebssysteme umfassen. Auf der Code Ebene können Empfehlungen und/oder Code Fragmente dokumentiert werden.

Die Arbeit besteht aus folgenden Teilaufgaben:

  1. Basisanalyse
  2. Evaluation
  3. Umsetzung
  4. Auswertung

Zu den Teilaufgaben:

  1. Basisanalyse
    • Grundlagen und Begriffe definieren
    • Grundlagen zu Multicore-, Multiprozessor – Architektur erarbeiten
    • Grundlagen zu Paralleler Abarbeitung einer Applikation erarbeiten
    • Einsatzgebiet abstecken und Aufgabe eingrenzen
  2. Evaluation
    • Welche Hardware ist nötig und Sinnvoll
    • Welches Betriebssystem ist nötig und Sinnvoll
    • grobes Test-Konzept erstellen
    • Welche Tools sind nötig und Sinnvoll
  3. Umsetzung
    • Testklassen implementieren
    • Konzepte in Java und/oder C++ implementieren
  4. Auswertung
    • Auswerten der Resultate
    • Konzepte/Plattformen vergleichen
    • Ausarbeiten von Code Beispielen und Codier Empfehlungen

Durchführung der Arbeit

Zeitrahmen und Arbeitsort:

Die Diplomarbeit dauert vom 16. Oktober 2006 bis zum 25. November 2006

  • 3 Wochen berufsbegleitend (20h / Woche) Arbeitsplatz zu Hause
  • 3 Wochen vollzeitlich (50h / Woche) Arbeitsplatz an der HTA

Infrastruktur

Je nach Bedarf stellt die HTA (wenn vorhanden) die nötigen Rechner zur Verfügung. Die Installation der nötigen Software erfolgt im Rahmen der Arbeit.

Ablauf

Als erstes muss ein Projekt/Entwicklungsplan (analog Standard IEEE – SPMP) erstellt werden. Dieser wird mit dem Betreuer besprochen und regelt den Projektverlauf (Entwicklungsphasenmodel) Diplomarbeit 2006 HTA LUZERN Seite 3 /3 und definiert die Meilensteine (inkl. geplanter Reviews). In diesem Projektplan soll auch schon die phasengerechte Dokumentation geregelt werden (welche Dokumente werden wann erstellt). Es wird erwartet, dass diese Planung rollend kontrolliert und wenn nötig angepasst wird.

Präsentation der Arbeit

Die folgenden Produkte müssen im Rahmen der Arbeit erstellt werden

  • Poster (siehe spezielle Information)
  • Web Extract (siehe spezielle Information)
  • Neben der Diplomausstellung gibt es keine offizielle Präsentationsveranstaltung. Der Rahme für eine Präsentation der Arbeit an die Betreuer/Experte wird bilateral definiert.
  • Die Projektdokumentation muss ausgedruckt in 2 Exemplaren dem Dozenten abgegeben werden (je 1 Exemplar geht an den Dozenten und an den Experten).

Hilfsmittel

-

Fachliteratur / Web-Links

Literaturliste von Roger Diehl und Internet allgemein.

Zusätzliche Bemerkungen

Wenn irgendwie möglich sollte die Hardware im HTA „Enterprise Lab“ für die Arbeit verwendet werden (wird in Zukunft auch in der Ausbildung eingesetzt) . Der Ansprechpartner ist Herr B. Joho.

Wirtschaftspartner (optional)

Roger Diehl

Dozent

Andreas Dürr

Experte

Xaver Birrer