Agenda
(preliminär)
|
VECKA 35
|
INTRODUKTION
TILL
PARALLELL-
OCH
TRÅDPROGRAMMERING
I
JAVA
- Introduktion till parallellprogrammering
- Introduktion till parallellprogammering i Java
med Trådar
(Threads)
- Lågnivåprogrammering av
trådobjekt
Föreläsningsmaterial
Föreläsning1
Exempelprogram
Exemepl1 - Textbaserad
trådtest
Övningar
Övning1 - Ett
första program med trådar (deadline 10.9)
|
|
VECKA 36
|
INTRODUKTION
TILL
JAVA
APPLETS
OCH
TILLÄMPNING
AV
TRÅDAR
Föreläsningsmaterial
Föreläsning2
Exempelprogram
Exemepl2 - En simpel
Applet-animation
------------------------------------------------------------------------------------------------------
LÅGNIVÅ
TRÅDPROGRAMMERING
Föreläsningsmaterial
Föreläsning3
Exempelprogram
Exempel3 - Att skicka och ta
emot avbrott
Exempel4 - Space invaders 0.1
|
|
VECKA 37
|
LÅGNIVÅ
TRÅDPROGRAMMERING
Övningar
Övning2 -
Hantering av avbrott och trådtillstånd (deadline 28.9)
------------------------------------------------------------------------------------------------------
HÖGNIVÅ TRÅDPROGRAMMERING
- Trådgrupper ("thread pools")
- Exekverare (Executor
och ExecutorService)
Föreläsningsmaterial
Föreläsning4
Exempelprogram
Exempel5 - Att använda
trådgrupper
Övningar
Övning3 -
Trådgrupper och exekverare (deadline 1.10)
|
|
VECKA 38
|
TRÅDSÄKERHET
- Trådkollision ("thread interference")
- Intrinsic locks
- Synkronisering
- Datastrukturer
Föreläsningsmaterial
Föreläsning5
|
|
VECKA 39
|
INGEN FÖRELÄSNING!
|
|
VECKA 40
|
PROJEKT
1
BÖRJAR
|
|
VECKA 41
|
JOBBA MED PROJEKT 1 |
|
VECKA 42
|
JOBBA MED PROJEKT 1
|
|
VECKA 43
|
PROJEKT
1
AVSLUTAS
------------------------------------------------------------------------------------------------------
MANUELL
PARALLELLISERING
AV
JAVA
PROGRAM
- Att designa parallella program
- manuell vs automatisk parallellisering
- Java och "multi-core" processorer
- Hur skall koden parallelliseras?
Föreläsningsmaterial
Föreläsning6
Övningar
Övning5 -
Parallellisering av "dekrypteringsalgoritm" (deadline 12.11)
|
|
VECKA 44
|
MANUELL PARALLELLISERING AV JAVA PROGRAM
Övningar
Övning6 -
Parallellisering av "brute force" algoritm (deadline 19.11)
|
|
VECKA 45
|
TRÅDSÄKERHET
OCH PARALLELLISERING
AV
JAVA
PROGRAM
- Memory consistency error
- Guarded blocks
- Lock Objects
- Immutable Objects
- Atomiska variabler
- Datastrukturer med inbyggd
trådsäkerhet
Föreläsningsmaterial
Föreläsning7
Exempelprogram
Exempel6
- Användning av atomiska variabler
Övningar
Övning7 -
Parallelliserad "bubble sort" (deadline
26.11)
|
|
VECKA 46
|
AUTOMATISK
PARALLELLISERING AV JAVA PROGRAM
- Verktyg för automatisk parallellisering i
Java
|
|
VECKA 47
|
PROJEKT
2
STARTAR
|
|
VECKA 48
|
JOBBA
MED
PROJEKT
2
|
|
VECKA 49
|
JOBBA MED PROJEKT 2 |
|
VECKA 50
|
PROJEKT 2 AVSLUTAS
|
|