Effiziente Programme

Offizieller Titel

185.190 Effiziente Programme (VU2)

Anrechnungen

Wahlfach für die Master-Studien "Software Engineering und Internet Computing" und "Computational Intelligence".

Zeit

Anmeldung ab 1.10.2015 über unser Web-Anmeldesystem

Vorlesungstermin: ab 9.10.2015: Fr, 14:00-15:30 EI3A (Altes EI, 2. Stock).

Vorlesungsteil beendet

Ab 8.1.2016 Übungs-Präsentationen zum gleichen Termin. Anmeldung über unser Web-Anmeldesystem ab sofort. Die Gruppengröße ist 2-3 Personen, Abweichungen sind in Einzelfällen möglich. Sollten Sie Ihre Gruppe gerade nicht anmelden können (man kann in unserem System immer nur eine Größe einstellen), schreiben Sie mir ein Mail.

Für alle Termine haben sich Gruppen angemeldet, daher finden alle Termine statt.

Lehrziel

Fähigkeit, effiziente Programme zu schreiben.

Inhalt

Ist Effizienz nötig, Arten von Effizienz, Spezifikation und Effizienz, Design für Effizienz, die Rolle effizienter Algorithmen (konstante Faktoren), Hardwarecharakteristik (Cache, Blockgrößen, Register, Bandbreite), Mikrooptimierung, Werkzeuge.

Beurteilung

Abgabe eines effizienten Programmes mit Demonstration und Erklärung; am schönsten wirkt die Demonstration, wenn es eine effiziente Version eines anderen Programmes ist. Die Abgabe erfolgt im Rahmen einer Präsentation vor den anderen Teilnehmern.

Aufgabenstellung und Terminvergabe (kommt noch).

Abgabe-Directory

Wenn Sie Ihre Abgabe im Web veröffentlichen wollen (geht nicht in die Beurteilung ein), legen Sie bitte mit Ihrem Account auf der g0 in /nfs/unsafe/httpd/ftp/pub/anton/lvas/effizienz-abgaben/2014w ein Directory an (das dürfen Sie, und nur Sie (und root) können es dann entfernen) und legen Sie in diesem Directory die Programm-Sourcen und ein bisschen Dokumentation ab. In der Dokumentation sollte zumindest stehen, welche Aufgabenstellung bearbeitet wurde, wie man die Programme aufruft (beim Standardbeispiel für dieses Semester reicht ein Link), welche Dateien zu welchen Programmversionen gehören, wieviel die Optimierungen gebracht haben, und wer die Autoren sind; es ist natürlich auch erlaubt, mehr zu schreiben, z.B. über bemerkenswerte Features oder Programmiertechniken. Sinnvollerweise schreibt man die Dokumentation oder einen Link darauf in eine Datei HEADER.html, README.txt, oder index.html (je nach Namen ergibt das unterschiedliche Effekte in der Web-Darstellung).

Unterlagen

Notizen (auf Anfrage auch als Hardcopy erhältlich).

Vortragender/Betreuer

Anton Ertl