<?php
    $title="PG Winter 2005: Automatische Nutzung von Multimedia-Befehlen auf rekonfigurierbaren Prozessor-Clustern";	// Titel der Seite
    $header_tags=""; // Optional: Zusätzliche Informationen für den HTML-Header
    $headline_url="";  // Optional: URL der Überschriften-Grafik    
    include $_SERVER["DOCUMENT_ROOT"] . "/menuheader.inc.php"; // Einbinden des Seitenkopfes  
//echo "<H1>$title</H1>";	// Ausgabe des Seitentitels als Überschrift, Zeile Löschen, wenn unerwüscht
?>

<table border=0 cellpadding=4>
<tr><td align="left" valign="middle">
<h3>Projektgruppe</h3>
<h2>Automatische Nutzung von Multimedia-Befehlen auf rekonfigurierbaren Prozessor-Clustern</h2>
<h3>Winter 2005</h3>
</td><td align="left" valign="middle">
<img src="PGLogo320.png" alt="PG-Logo" width="320" height="224" border="0"></td></tr>
</table>
<table border="0" width="100%" cellpadding=2 cellspacing=10> 
  <tr align="left" bgcolor="#ffccff"> 
    <td valign=middle><h3>Wiki</h3>
    <p>Das <a href ="https://www.irb.upb.de/twiki/bin/view/Pgrekonf"><big><b>Wiki</b></big></a> der Projektgruppe
    enth&auml;lt Arbeitsmaterial und den aktuellen Planungsstand.</p></td>
  </tr>
<!--  <tr align="left" bgcolor="#ccffcc"><td><h3>Vorlesungsfolien</h3>
  <p>Die Materialien, die in der Vorlesung verwendet worden sind, finden
  Sie <big><a href ="vorlesung.php">auf dieser Seite</a></big>.</p>
  </td></tr>
  <tr align="left" bgcolor="#ccccff"><td><h3>Termin</h3>
    <p>Die regelmäßigen Treffen der Projektgruppen-Mitglieder finden statt:<br>
    <big><b>Mittwochs</b> um <b>11:00</b> Uhr im Raum <b>F2.211</b></big></p>
  </td></tr> -->
<tr align="left" bgcolor="#ffffcc"> 
  <td><h3>&Uuml;bersicht der Seminarthemen mit Literaturvorschl&auml;gen</h3>
  <p><a href ="seminar.php">Auf dieser Seite</a> k&ouml;nnen Sie sich
  n&auml;her &uuml;ber Ihr Seminarthema und die zugehörige Literatur informieren.</p></td>
</tr> 

<!-- <tr align="left" bgcolor="#ffcccc"><td><h3>Werbe-Block</h3>
<p><i><font size="+1">Sie suchen noch eine PG im Gebiet Software-Technik?</font></i><br>
<b><font size="+2">Sehr gut!</font></b><br>
<i><font size="+3">Wir haben noch einige freie Plätze.</font></i><br>
    <b>Ansprechpartner für Anmeldung und Nachfragen:</b> <a href="http://www.upb.de/cs/mthies">Michael Thies</a> (<a href="mailto:mthies@upb.de">mthies@upb.de</a>)
   </p></td>
  </tr> -->
<!--  <tr align="left" bgcolor="#ccccff"> 
    <td valign=middle><h3>Wiki</h3>
    <p>Das <a href ="https://www.irb.upb.de/twiki/bin/view/PGWavis">Wiki</a> der Projektgruppe
    enth&auml;lt Arbeitsmaterial und den aktuellen Planungsstand.</p></td>
  </tr> 
  <tr align="left" bgcolor="#ffffcc"> 
    <td valign=middle><h3>&Uuml;bersicht der Seminarthemen mit Literaturvorschl&auml;gen</h3>
    <p><a href ="seminar.php">Auf dieser Seite</a> k&ouml;nnen Sie sich
    n&auml;her &uuml;ber ihre Favoriten unter den Seminarthemen informieren.</p></td>
  </tr> 
  <tr align="left" bgcolor="#ffcc99"> 
    <td valign=middle><h3>Erster Projektgruppen-Termin</h3>
    <p>Das erste Treffen der PG-TeilnehmerInnen findet am Freitag, 23. April
       ab 9:15 Uhr <big>ausnahmsweise im <b>Raum F2.419</b> statt</big>.</p></td>
  </tr>
  <tr align="left" bgcolor="#ccffcc"> 
    <td valign=middle><h3>Projektgruppen-Termin</h3>
    <p>Der Termin f&uuml;r die Vorlesungen der Projektgruppe und die
       regelm&auml;&szlig;igen Treffen der PG-Mitglieder ist:<br>
    <big>jeweils am <b>Freitag, 9:15 - 10:45 Uhr im Raum F1.110</b></big></p></td>
  </tr> -->
</table>
<h4>Ausgangssituation</h4>
<p>
Der Einsatz von Multimedia-Anwendungen hat zur Entwicklung
zahlreicher Befehls-Erweiterungen  wie bspw. MMX/SSE/SSE2 (Intel/Pentium)
oder AltiVec (Motorola/PowerPC) geführt. Diese werden meist mittels Assembler
bzw. unter Benutzung von Systembibliotheken von Hand programmiert.
</p>
<p>
Weiter ist abzusehen, daß zukünftige Prozessorarchitekturen mehrere
eng gekoppelte Prozessorkerne auf einem Chip kombinieren werden.
Ein bekanntes aktuelles Beispiel ist der skalierbare Multiprozessor
IBM Cell, welcher in der neuen Playstation 3 Verwendung finden wird.
</p>
<p>
Für reine Multimedia-Anwendungen können die einzelnen Prozessoren
mit einem gemeinsamen Befehlsstrom versorgt werden, wobei jeder Prozessor
zeitgleich dieselbe Operation auf unterschiedlichen Daten ausführt
(<i>SIMD = single instruction - multiple data</i>).
</p>
<p>
Bei weniger regelmäßig strukturierten Programmteilen ist aber eine Nutzung
der Prozessoren zur parallelen Bearbeitung unterschiedlicher Aufgaben
sinnvoller (<i>MIMD = multiple instructions - multiple data</i>).
</p>

<h4>Folien aus der Projektgruppen-Vorstellung</h4>
<table summary="Folien aus der Projektgruppen-Vorstellung" border="0" cellspacing="4" cellpadding="4">
	<tr>
		<td><a href="Full/Page_1.png" target="_blank"><img src="Thumb/Page_1.png" alt="Folie 1" width="200" height="150" border="0"></a></td>
		<td><a href="Full/Page_2.png" target="_blank"><img src="Thumb/Page_2.png" alt="Folie 2" width="200" height="150" border="0"></a></td>
		<td><a href="Full/Page_3.png" target="_blank"><img src="Thumb/Page_3.png" alt="Folie 3" width="200" height="150" border="0"></a></td>
		<td><i>Klicken Sie auf ein Bild, um es zu vergr&ouml;ssern.</i></td>
	</tr>
	<tr>
		<td><a href="Full/Page_4.png" target="_blank"><img src="Thumb/Page_4.png" alt="Folie 4" width="200" height="150" border="0"></a></td>
		<td><a href="Full/Page_5.png" target="_blank"><img src="Thumb/Page_5.png" alt="Folie 5" width="200" height="150" border="0"></a></td>
		<td><a href="Full/Page_6.png" target="_blank"><img src="Thumb/Page_6.png" alt="Folie 6" width="200" height="150" border="0"></a></td>
		<td><a href="Full/Page_7.png" target="_blank"><img src="Thumb/Page_7.png" alt="Folie 7" width="200" height="150" border="0"></a></td>
	</tr>
</table>
<p>Die Folien sind auch als <a href="PGrekonf.pdf">PDF-Dokument</a> verf&uuml;gbar.</p>

<h4>Aufgabenstellung</h4>
<p>
In dieser Projektgruppe soll ein optimierender Übersetzer
entwickelt werden, der die zu übersetzenden Programme auf
die Struktur der Datenverarbeitung hin untersucht und in
Abschnitte einteilt, die sich besser für eine SIMD- bzw.
MIMD-Bearbeitung eignen. Bei der Ausführung des Programms wird
dann der Prozessor-Cluster an den Abschnittsgrenzen jeweils für die
geeignete Betriebsart rekonfiguriert, um die Leistung des
Systems zu steigern.
</p>
<p>
Die Entwicklung des Übersetzers stützt sich auf Software-Werkzeuge,
die aus Beschreibungen von Prozessoreigenschaften auf hohem Niveau
automatisch zentrale Software-Module eines Compiler-Backends und
eines zyklengenauen Simulators für den Prozessor-Cluster generieren.
Daneben ist, in Kooperation mit der Fachgruppe Schaltungstechnik,
auch eine Evaluation anhand von prototypischen Hardware-Realisierungen
des Prozessor-Clusters möglich.
</p>
<h4>Vorkenntnisse</h4>
<ul><li>Wünschenswert: Compilation Methods bzw. Compiler II</li>
<li>Darüber hinaus nützlich:
<ul><li>PLAC bzw. Compiler I</li>
<li>Parallele Programmierung (in Java)</li>
<li>Betriebssysteme</li>
<li>Generierung von Software aus Spezifikationen</li>
</ul></li>
</ul>

<p><big><b>Rückfragen an </b></big><a href="http://www.upb.de/cs/mthies">Michael Thies</a> (<a href="mailto:mthies@upb.de">mthies@upb.de</a>)</p>

<?php
    $author_email="mthies@upb.de";  // Optional: Autor festlegen
    include "/homes3/www/data/cs/ag-kastens/menufooter.inc.php"; // Einbinden des Seitenfusses
?>
