Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

Distribuerte Objekter Våren 2012 Professor II Eric Jul Forelesning F2 – 2012-02-06.

Lignende præsentationer


Præsentationer af emnet: "Distribuerte Objekter Våren 2012 Professor II Eric Jul Forelesning F2 – 2012-02-06."— Præsentationens transcript:

1 Distribuerte Objekter Våren 2012 Professor II Eric Jul Forelesning F2 – 2012-02-06

2 Velkommen • Eric Jul, Professor II, til daglig: Bell Labs, Dublin, Ireland • Tor Ivar Johansen, hjelpelærer • Bjørn Erik, hjelpelærer Hvem var her IKKE første gang?

3 Kontakt • ericbj@ifi.uio.no ericbj@ifi.uio.no • Haster? SMS til +45 40 25 16 50 • Skypeid: ericbjul – efter aftale. • Tor Ivar og Bjørn Erik: kan hjelpe med det praktiske

4 Hvad • Kurs om Distribuerete Objekter

5 Hvornår Starter i dag og er på følgende mandage: • 23/1 – 2011 • 6/2 – 2011 • 20/2 – 2011 • 19/3 – 2011 • 16/4 – 2011 (forventet) Klokken 10 – 12 og 13 – 16 I alt 5 x 2 x 3 timer = 30 timer

6 Hvor? Her!?!? Men se websiderne. Øvelsestimer: hver fredag med Tor Ivar/Bjørn Erik VIGTIGT: mød op til øvelserne!

7 Hvad Principper om distribuerete objekter. Anvender et gennemgående språk: Emerald. VIGTIGT: Emerald er et værktøj, et eksempel – Emerald er i sig selv IKKE formålet med kurs.

8 Materiale • Rapporter • Artikler www.emeraldprogramminglanguage.org www.sourceforge.org

9 Kontakt Eric: ericbj@ifi.uio.no Haster det, så: SMS til +4540251650 Skype: ericbjul

10 Kurs opbygning VIGTIGT: learning-by-doing Fem moduler: • forelæsning • øvelser (vigtigt) • en større opgave

11 Eksamen Nogle obligatoriske opgaver, de sidste to med karakter, som tæller 1/3. Sidste 1/3 er mundtlig eksamen

12 Modul 1: Emerald basics • Emeralds objektbegreb • constructors, classes • Interfaces/types • Immutable types Assignment: Install Emerald from SourceForge

13 Modul 1: Opgaver • Installer Emerald på din maskine • get language report and Emerald article “General Purpose Lanuage” • Skriv og kør “Hello, world” i Emerald • Skriv et Sieve program: Et objekt som accepterer det første tal, som det får, herefter vil det videresende til en kopi af sig selv, de tal, der IKKE har det første tal som divisor. Send tallene fra 2 til 100 igennem sien!

14 Modul 1: Opgaver Hvor mange har: – installeret Emerald på egen maskine? – kørt Hello World? – gennemført alle opgaverne? – været til øvelserne?

15 Modul 2: Concurrency, distribution • Hvorfor distribution er interessant for alle! • Concurrency • Monitors • Distribution model • Distribution primitives Obligatorisk opgave: Små programmeringsopgaver om concurrency

16 Modul 3: Distribution Grundliggende principper for distribution : • Remote References • RPC – remote procedure call • Implementation of RPC • Location concept • Simple mobility • Asynchronous operations in Emerald • Immutability and its uses

17 Modul 4: Advanced distribution Avancerede distribution: • Call-back concept: Node State Changes • Emerald Virtual Machine • Secure hash functions • Peer-to-peer • Napster/Nopester • Implementation of process mobility • Distributed Garbage Collection En større programmeringsopgave

18 Modul 5: Større opgave • Heterogeneous mobility • Design Patterns: Proxy, Observer • Keys • Replication • Take-home exam • Planetlab En større programmeringsopgave

19 Denne gang: • Hvorfor Distribution er interessant for alle! • Concurrency in Emerald • Principles for concurrency • Distribution

20 Why Distribution? Trends: • Moore’s law (1965): transistors/cm 2 doubles every year • Modified Moore’s Law (1975): transistors/cm 2 doubles one to two years Consequence: Number of machine cycles has doubled every 1-2 years since 1959.

21 CPUs A consequence of Moore’s Law has been that CPUs from 1959 to 2005 increased in clock frequency at the same rate as the increase in transistors. However, from 2005 clock frequencies has leveled completely off at about 3 GHz. Instead, the number of cores doubles every 1-2 years. Summary: Cycles/second doubles every 1-2 years from 1959 to (estimated) 2018!

22 Speed of Light • Speed of light is approximately 300,000 km/s • Exact definition: c = 299,792,458 m/s in vacuum. • In copper and optical fiber: about 1/3 slower. In a nanosecond, light moves about 30 cm, i.e., about 1 foot, so 1 ns is a “light-foot”!

23 Latency If two machines are 3 meters apart, latency due to speed of light is approximately 10 nanoseconds ((3m) / (3x10 9 m/s)) Now measure “distance” in CPU cycles: In 1980: Intel 8080 1MHz CPU: 1/100 cycle In 2005: Intel Pentium 3GHz CPU: 30 cycles

24 Exploding Universe Chocking Consequence: If any two computers at a fixed distance (in meters) are upgraded often then they will appear to move away from each other exponentially as measured in clock cycles. THUS everyone must use distributed techniques! The speed of light is, sadly, way, WAY too slow!

25 Opgavesæt II • Kør hi – ho • Programmer en barrier i Emerald, test med program der har 4 processer, som venter på barrieren gentagne gange, skrive ud hver gang de prøver at passerer og igen når de passerer. Endnu en process som udløser barrieren 3 gange. Kør programmet. • Programmer en producer-consumer-med-buffer i Emerald. Send tallene 1-30 igennem bufferen, hvor producer og consumer hhv. hver 3. og 5. gang venter i 100 ms (brug delay). Lad bufferen udskrive, når den indsætter/fjerner et element. Brug array. Max 2 elementer. Afleveringsfrist, 2012-02-20 kl. 23.59 norsk tid (22.59 UTC) Sendes til Tor Ivar.


Download ppt "Distribuerte Objekter Våren 2012 Professor II Eric Jul Forelesning F2 – 2012-02-06."

Lignende præsentationer


Annoncer fra Google