Der doppeldeutige Titel des Kurses wurde absichtlich gewählt: (a) 'schnelle
Entwicklungsmethoden für die Programmierung' und (b) 'Entwicklung effizienter
Programme'. Dieser Kurs ist der Anfang einer Serie angewandter Seminare zum
Thema 'Software Engineering'. Das Seminar und das dazugehörige Tutorium
werden im GZI (Computer Pool) in direkter zeitlicher Abfolge gehalten. Auf
diese Weise können alle vorgestellten Techniken unmittelbar in der Praxis
ausprobiert werden. Wir wollen, dass Ihr 'hands on' Erfahrungen sammelt!
Der Kurs dieses Semesters hat Programmoptimierung unter Nutzung von C Compiler
und Profiling Werkzeugen eines Unix Systems (in unserem Fall: Solaris) zum
Ziel. Dazu gehören Werkzeuge wie: standard C Compiler Optimierungsoptionen,
automatische Optimierung durch Profilauswertung, Performance Analyzer, Kernel
Cache Statistiken, I/O Statistiken. Aber auch Optimierungstechniken wie:
memory mapped file I/O, optimized libraries, compiler pragmas, loop unrolling,
branch avoidance, aliasing avoidance, memory alignment probleme, cache-aware
array access.
Wir werden Euch zeigen wie man:
Software Engineering: Making Programs Fast
The title of this course was intentionaly chosen to have a double meaning: (a)
'fast design of programs' and (b) 'design of fast programs'. It is intended as
the start of a series of applied seminars on software engineering. The seminar
and its accompanying tutorial will be held in a computer pool in direct
succession. That way everything that is presented can be applied in practice
immediately. We want you to get 'hands on' experience in software engineering!
This semesters' course will focus on optimizing programs utilizing C compiler
features and profiling tools of a Unix OS (Solaris) such as: standard compiler
optimization switches, advanced compiler optimization via profiles,
Performance Analyser, kernel cache statistics, I/O statistics; as well as code
optimization techniques such as: memory mapped file I/O, optimized libraries,
compiler pragmas, loop unrolling, branch avoidance, aliasing avoidance, memory
alignment issues, cache-aware array access.
We will show you how to:
Der Kurs ist auf 20 Teilnehmer begrenzt. Ihr solltet die Programmiersprache C
in ihren Grundzügen beherrschen.
The course is limited to 20 participants. You should have a basic
understanding of the programming language C.
Rhythmus | Tag | Uhrzeit | Format / Ort | Zeitraum |
---|
Studiengang/-angebot | Gültigkeit | Variante | Untergliederung | Status | Sem. | LP | |
---|---|---|---|---|---|---|---|
Graduate School in Bioinformatics and Genome Research / Promotion | |||||||
Naturwissenschaftliche Informatik / Diplom | (Einschreibung bis SoSe 2004) | SE | HS |