IN9050 – Programming heterogeneous multi-core architectures

Timeplan, pensum og eksamensdato

Velg semester

Endringer på grunn av koronaviruset

Høsten 2020 planlegger vi for at undervisning og eksamen gjennomføres slik det er beskrevet i emnebeskrivelsen og på semestersidene, men det kan komme endringer på grunn av korona-situasjonen. Du får varsler om eventuelle endringer på semestersiden og/eller i Canvas.

Våren 2020 ble undervisning og eksamen digital. Se endringer og felles retningslinjer for eksamener ved MN-fakultetet våren 2020.

Kort om emnet

Emnet omhandler problemstillinger knyttet til heterogene multikjernearkitekturer som finnes i alle databehandlingsenheter, som strekker seg fra mobiltelefoner og varebenker til store dataklynger.

Du vil lære hvordan asymmetriske kjerner, threadingmodeller, minnehierarkier og interconnectionteknologier bestemmer om beslutninger som blir gjort i parallelle implementeringer av eksempelalgoritmer er vellykkede eller ikke.

Studentene vil få håndfast erfaring med denne utfordringen ved å programmere tre forskjellige arkitekturer. Gjennom emnet skal studentene forstå de utfordringer som finnes i forbindelse med å lage effektive programmer for de ulike arkitekturene. Programmering og dokumentasjon av effekten av alternative valg er en viktig del av emnet.

De tre konkrete arkitekturene endrer seg med aktuell relevans for markedet. Foreløpig vil studentene oppleve dedikerte SIMD-enheter i lav-strøm-CPUer (ARM), grafikkbehandlingsenheter (GPUer, NVidia) og maskiner som er koblet sammen med PCI Express interconnect (Dolphin ICS).

Hva lærer du?

Etter å ha tatt emnet vil du:

  • ha forståelse for båndene mellom godt parallelliseringsvalg og konkrete parallelle arkitekturer og parallelliseringsrammer (f.eks. tråder, vektorisering og kombinasjoner).
  • ha kunnskap om ulike måter å løse parallelliseringsoppgaver på for alternative parallelliseringsmodeller, minnehierarkier og systemarkitekturer.
  • ha et godt innblikk i evalueringen av alternative design- og implementeringsalternativer for parallellisering, avhengig av arkitektur og rammeverk.
  • ha kunnskap om å finne, forstå og fastsette flaskehalser i parallelle programmer
  • ha en forståelse av typiske pipelines for multimediebelastninger som f.eks. video encoders
  • kjennskap til arkitekturen og rammen til tre mye brukte moderne plattformer for parallell programmering
  • ha erfaring med å presentere en vurdering av alternative problemløsninger i muntlig, skriftlig og plakatformat
  • ha innblikk i det nyeste innen parallellisering for en valgt plattform
  • ha erfaring i å parallellisere en virkelig arbeidsbelastning
  • ha erfaring med å presentere forelesning til masterstudenter

Opptak til emnet

Ph.d.-kandidater ved UiO søker plass på undervisningen og melder seg til eksamen i Studentweb.

 

Hvis emnet har begrenset kapasitet, vil ph.d.-kandidater som har emnet i sin utdanningsplan ved UiO bli prioritert. Noen nasjonale forskerskoler kan ha egne regler for rangering av søkere til emner med begrenset kapasitet.

 

Ph.d.-kandidater som har opptak ved andre utdanningsinstitusjoner må innen angitt frist søke om hospitantplass.

Data kommunikasjon (INF3190 - Datakommunikasjon/tilsvarende IN-course), operativsystemer (som f.eks. INF3151/INF4151 - Operativsystemer/IN-emne)

Overlappende emner

Undervisning

Emnet består av:

  • Forelesninger: 24 timer (for tiden i 4 bolker)
    • Det er ikke obligatorisk å delta
  • Gruppelesninger: 12 timer (i 4 bolker)
    • Det er ikke obligatorisk å delta
  • Tre muntlige, interaktive plakatpresentasjoner: 9 timer (i 3 bolker)
    • Presentasjon av det omfattende prosjektets fremgang er obligatorisk
    • Tilstedeværelse av alle presentasjoner er obligatorisk
    • Kun gyldig i samme semester
  • En hjemmeeksamen
    • Rapport om bakgrunnen til den omfattende real-world applikasjonen som er gjenstand for parallellisering, relatert arbeid, plattformspesifikke valg og ytelsesvurdering (bestått/ikke bestått)
    • Fungerende kildekoden (bestått/ikke bestått)
    • Plakat som illustrerer ytelsesresultater (obligatorisk, men ikke gitt karakter)
  • En 30-minutters forelesning om et bestemt real-world testproblem

Eksamen

En hjemmeeksamen bestående av kildekode, en rapport og en presentasjon gjort i form av en forelesning.

Alle deler av eksamen må bestås, og i samme semester.

Som eksamensforsøk i dette emnet teller også forsøk i følgende tilsvarende emner: IN5050 - Programmering av heterogene multi-core arkitekturerINF5063 - Programming heterogeneous multi-core architectures (videreført)INF9063 - Programming heterogeneous multi-core architectures (videreført)

Hjelpemidler til eksamen

Alt, men ingen tekst eller kode kan kopieres ordrett fra andre kilder.

Karakterskala

Emnet bruker karakterskala bestått/ikke bestått. Les mer om karakterskalaen.

Adgang til ny eller utsatt eksamen

Studenter som dokumenterer gyldig fravær fra ordinær eksamen, kan ta utsatt eksamen i starten av neste semester.

Det tilbys ikke ny eksamen til studenter som har trukket seg under ordinær eksamen, eller som ikke har bestått.

Tilrettelagt eksamen, kildebruk, begrunnelse og klage

Se mer om eksamen ved UiO

Sist hentet fra Felles Studentsystem (FS) 14. aug. 2020 21:16:37

Fakta om emnet

Studiepoeng
10
Nivå
Ph.d.
Undervisning
Vår
Eksamen
Vår og høst
Undervisningsspråk
Norsk (engelsk på forespørsel)