Kursplan för läsåret 2011/2012
(Genererad 2011-08-31.)
ALGORITMIMPLEMENTERINGEDAF15
Algorithm Implementation

Antal högskolepoäng: 5. Betygsskala: TH. Nivå: G2 (Grundnivå, fördjupad). Huvudområde: Teknik. Undervisningsspråk: Kursen ges på svenska. Överlappar följande kurs/kurser: EDA115. Obligatorisk för: Pi3. Valfri för: D4, D4is, D4pv, F4, F4bs. Kursansvarig: Univ.lektor Jonas Skeppstedt, Jonas.Skeppstedt@cs.lth.se, Datavetenskap. Förkunskapskrav: EDAA01 Programmeringsteknik - fördjupningskurs eller EDA027 Algoritmer och datastrukturer. Prestationsbedömning: Skriftlig tentamen. För godkänt betyg krävs godkänd tentamen, godkända datorlaborationer samt godkänd inlämningsuppgift. Slutbetyg i kursen grundar sig på resultatet av den skriftliga tentamen. Hemsida: http://cs.lth.se/edaf15.

Syfte
Kursens huvudsyfte är att studenterna ska lära sig en metodik för att hitta en fördelaktig version av en algoritm och att maximera prestanda vid implementering av denna. För att nå detta huvudsyfte är två andra syften med kursen att studenterna ska ha kunskaper dels (1) om programspråket ISO C99 med fokus på vilka språkkonstruktioner som ofta blir effektiva och/eller påverkar portabilitet, och dels (2) om modern datorarkitektur, ur programmerarens synvinkel, med fokus på mikroprocessorer och cacheminnen.

Mål

Kunskap och förståelse
För godkänd kurs skall studenten

Färdighet och förmåga
För godkänd kurs skall studenten

Värderingsförmåga och förhållningssätt
För godkänd kurs skall studenten

Innehåll
ISO C99, GNU debuggern GDB, Valgrind, profileringsverktygen GPROF, OPROFILE och GCOV, pipelinade mikroprocessorer, Cellprocessorn, cacheminnen, användning av simuleringsverktyg för prestandaanalys, implementering av matematiska funktioner för processorer med eller utan hårdvarustöd för flyttal.

Litteratur
Jonas Skeppstedt and Christian Söderberg: Writing Efficient Safety-Critical C Code a Thorough Introduction for Java Programmers. ISBN: 978 91 977 940 08