Dieser Kurs zeigt einige der Implikationen auf, die aktuelle Trends der Hardwaretechnologie auf die Datenbankverarbeitung haben. Fortschritte wie tiefe Cache-Hierarchien oder die Verwendung von Hardwarebeschleunigern haben starke Auswirkungen auf Algorithmen der Datenverarbeitung. Im Kurs wird gezeigt, wie sorgfältiges Algorithmendesign die Effektivität von Hardware-Caches steigern kann; es wird gezeigt, wie die Parallelität moderner CPUs verwendet werden kann, um Datenbankaufgaben zu beschleunigen; es wird gezeigt, wie moderne und spezialisierte Prozessoren (z.B. Grafikprozessoren) zur Datenverarbeitung ausgenutzt werden können; und wir werden einen Blick werfen auf programmierbare Hardwarebausteine (field-programmable gate arrays, FPGAs) als eine vielversprechende Technologie jenseits dessen was in konventionellen Systemen bereits verfügbar ist.
Der Kurs wird begleitet von Übungen, in denen die gezeigten Erkenntnisse und Ideen verifiziert werden. Dazu werden kleine Softwareprogramme geschrieben, um die Effekte auf tatsächlichen Systemen zu zeigen.
Am 09.06.2020 wird die Klausur nachgeholt, die im März wegen der Coronakrise kurzfristig abgesagt werden musste. Alle angemeldeten Teilnehmer sollten mittlerweile eine Email mit Instruktionen zum Ablauf erhalten haben.
Die Planungen der Universität zum Nachholen von Prüfungen aus dem Wintersemester laufen auf Hochtouren. Voraussichtlich werden Anfang nächster Woche neue Prüfungstermine bekannt gegeben. Wir rechnen aktuell damit, dass der Klausurtermin für diese Veranstaltung Anfang Juni stattfinden wird. Sobald ein Termin feststeht, werden wir ihn hier bekannt geben.
Studierende, die zum ursprünglich geplanten Termin angemeldet waren, werden vom System automatisch für diesen Ausweichtermin angemeldet. Nachmeldungen werden nur in Ausnahmefällen möglich sein. Details werden vsl. Anfang kommender Woche bekannt gegeben.
Nach einer neuen Weisung der TU Dortmund müssen alle Klausuren bis zum 19.04.2020 abgesagt werden. Dies betrifft auch die Klausur zu “Data Processing on Modern Hardware”, die somit nicht wie ursprünglich geplant stattfinden kann.
Die Ergebnisse des ersten Klausurtermins wurden ins Boss-System eingetragen. Die Klausureinsicht findet am Dienstag, den 10.03.2020 von 16:00 bis 17:00 Uhr in Raum OH14/304 statt.
Wichtige Hinweise zur Klausur:
Die Klausur findet statt am Dienstag, den 04.02.2020, von 09:00-10:30 Uhr in Raum HG1/HS6. Bitte finden Sie sich rechtzeitig, spätestens um 08:45 Uhr, vor dem entsprechenden Raum ein. Bitte bringen Sie einen dokumentechten Stift (schwarz oder blau, bitte nicht rot) mit sowie einen Lichtbildausweis.
Zugelassenes Hilfsmittel ist ein Blatt DIN A4, handbeschrieben (beidseitig) und ein Taschenrechner. Bitte bringen Sie sonst nichts mit. Sie benötigen insbesondere kein eigenes Papier.
Bitte denken Sie daran, Ihr Mobiltelefon abzustellen.
Am Montag, den 13.01. findet die Übung um 14:15 Uhr statt. Die Vorlesung entfällt.
Klausurtermin ist Dienstag, der 04.02.2020 um 09:00-10:30. Nachtermin ist der Mittwoch, 18.03.2020 um 11:00-12:30 12:00-13:30.
Die Webseite wurde erstellt.
Kap. | Inhalt | Letzte Änderung | |
---|---|---|---|
1 | Introduction | 27.01.2020 | |
2 | Cache Awareness | 07.10.2019 | |
3 | Instruction Execution | 04.11.2019 | |
4 | Vectorization | 25.11.2019 | |
5 | Execution on Multiple Cores | 25.11.2019 | |
6 | Graphics Processing Units (GPUs) | 06.01.2020 | |
7 | Field-Programmable Gate Arrays (FPGAs) | 20.01.2020 |
Nr. | Ausgabe | Abgabe | Inhalt | Sonstiges |
---|---|---|---|---|
1 | 07.10.2019 | 14.10.2019 | Cache-Benchmark | Lösung |
2 | 14.10.2019 | 21.10.2019 | CPU Counter | |
3 | 21.10.2019 | 28.10.2019 / 04.11.2019 | Vector-At-A-Time | Code-Vorlage |
4 | 04.11.2019 | 18.11. (verschoben: 25.11.) | Parallele Verarbeitung | Code-Vorlage |
5 | 25.11.2019 | 02.12.2019 / 09.12.2019 | Just-In-Time Kompilation | weedb-cjit jit-add jit-loop weedb-jit |
6 | 09.12.2019 | 16.12.2019 / 06.01.2020 | Hash Joins | Lösung 1 Lösung 2 |
7 | 06.01.2020 | 13.01.2020 / 20.01.2020 | SIMD Vektorisierung | count_c compression_c Lösung |
8 | 20.01.2020 | 27.01.2020 | GPU-Programmierung | coalescing_tar.gz |