100% tevredenheidsgarantie Direct beschikbaar na je betaling Lees online óf als PDF Geen vaste maandelijkse kosten 4,6 TrustPilot
logo-home
Samenvatting

Samenvatting parallel computing HVA

Beoordeling
3,7
(3)
Verkocht
6
Pagina's
38
Geüpload op
17-12-2021
Geschreven in
2020/2021

In dit document is een uitgebreide samenvatting te vinden over het vak Parallel computing zoals het op de HVA wordt gegeven. Het is dus een combinatie van de lessen, het boek en onderdelen van internet.

Voorbeeld van de inhoud

Parallel computing
Parallel programming
PC verhoogt de:
- Snelheid waarmee een programma een bepaald aantal taken uitvoert
- Aantal taken dat een programma uitvoert in een bepaalde tijd
- Schaal van problemen die een programma aan kan

Flynn’s taxonomy
Single instruction, single data (SISD)
Er is één instructie en één data.
Dit is erg simple en computers van vroeger werkte zo. SIDS

Voorbeeld:
1 iemand snijdt 1 wortel.
Instructie: snijden
Data: wortel

Single instruction, multiple data (SIMD)
Er is één instructive en meer data. SIMD

Voorbeeld:
2 mensen snijden, 1 een wortel en de ander selderie.
Instructie: snijden
Data: wortel en selderie




Multiple instruction, single data (MISD)
Er zijn meerdere instructies en maar 1 data.
Deze versie is erg ingewikkeld en wordt daarom ook niet
vaak gebruikt.

Voorbeeld:
1 iemand snijdt en 1 iemand schilt tegelijk een wortel.
Instructie: snijden en schillen
Data: wortel
MISD


Multiple instruction, multiple data (MIMD)
Er zijn meerdere instructies en meer data. MIMD
Deze wordt het meeste gebruikt.

Voorbeeld:
1 iemand schilt een wortel en de ander snijdt een selderie.

,Instructies: schillen en snijden
Data: wortel en selderie

Single program, multiple data (SPMD)
Er is één programma, maar dat betekend
niet date r ook maar één instructie is. Een SPMD
programma kan meerdere instructies
bevatten.

Voorbeeld:
Er zijn twee mensen die hetzelfde recept
volgen. Persoon 1 schilt een wortel en persoon 2 snijdt een selderij.
Program: recept
Data: wortel en selderij
Instructie: snijden en schillen

Multiple program, multiple data
(MPMD) MPMD
Er zijn meerdere programma’s en elk
programma kan meerder instructies hebben.

Voorbeeld:
Er zijn twee mensen bezig met een verschillend
recept. Persoon 1 schilt een wortel en persoon
2 snijdt een selderij. Beide personen zijn dus
bezig met een ander recept.
Program: recepten
Data: wortel en selderij
Instructie: snijden en schillen

,Memory(geheugen)
Shared memory(gedeeld geheugen)
Alle processoren hebben toegang tot hetzelfde geheugen.
Als een processor iets veranderd in het geheugen, dan kunnen alle andere processoren die
verandering zien.

Voorbeeld:
Persoon A snijd de aardappel doormidden, persoon B ziet dat de aardappel nu doormidden is.
Processor: persoon A en persoon B
Geheugen onderdeel: aardappel
Uniform memory access (UMA)
Alle processors hebben dezelfde toegang tot het UMA
geheugen. Dit houdt ook in dat ze even snel toegang
kunnen krijgen.

Er zijn verschillende UMA architecturen en de meest
gebruikelijke is SMP.




Symmetric multiprocessing system (SMP)
Heeft twee of meer identieke processoren
gekoppeld aan een enkel gedeeld geheugen.

Een mogelijk probleem bij SMP is cache. Als twee SMP
processoren iets in hun cache hebben opgeslagen en
dit gebruiken terwijl de waarde in het geheugen
misschien al veranderd is, wordt dan dus de oude
waarde veranderd en terug gezet. Een oplossing
hiervoor is Cache coherency.
Dit zorgt ervoor dat de cache veranderd wordt als de
waarde in het geheugen veranderd wordt.
Dit is te vinden op wikipedia.
In de moderne multi core wordt dit door de processor hardware gedaan.
Non-uniform memory access (NUMA)

NUMA




Distributed memory(verdeeld
geheugen) Distributed
Elke processor heeft zijn eigen geheugen.

, Het nadeel hiervan is dat als er iets veranderd in het geheugen dat dit op een manier tegen de
andere processoren verteld moet worden.

Het voordeel is dat dit erg schaalbaar is, shared memory is minder schaalbaar. Het is makkelijk om
meer processoren met geheugen toe te voegen en hierdoor is er ook gelijk meer geheugen
beschikbaar.


Process
Een process bevat de code, data en de status informatie. Elk process is onafhankelijk en heeft zijn
eigen adresruimte(adress space) in het geheugen.
Een process kan weer bestaan uit verschillende threads.

Er zijn wel mogelijkheden om te communiceren en data te delen tussen processen, maar dit kost wel
wat moeite. Er is een inter-process communication nodig.
Het gebruiken van meerdere processen gebeurt eigenlijk alleen als erg over meerdere computers
wordt gewerkt. De voorkeur gaat naar het gebruiken van threads i.p.v. meerdere processen.

Inter-process communication (IPC)
Er zijn verschillende mogelijkheden om dit voor elkaar te krijgen:
- Sockets and pipes
- Shared memory
- Remote procedure calls

Java
Een Java applicatie die gerund wordt kan gezien worden als een process.

Thread
Een thread is onderdeel van een process, een thread is dus eigenlijk een mini process. Een thread is
een onafhankelijk pad van executies.
Threads in een process delen het adress en de data.

Voorbeeld:
Henk en Lisa koken samen in de keuken, maar doen beide hun eigen taak. Henk, Lisa en Kees gaan
een salade maken. Henk pakt de groenten, Lisa snijdt ze en Kees maakt de dressing. Als Kees klaar is
met het maken van de dressing wordt hij afgesloten en gaan de andere verder.
Process: salade maken
Threads(actief): Henk, Lisa en Kees
Threads(niet actief): Kees als die klaar is met dressing maken
Shared adress: de keuken
Shared data: ingredienten

Concurrency (structure)
De mogelijkheid om een programma op te splitsen in
delen en onafhankelijk van elkaar runnen.
De volgorde van de taken maakt niet uit.
Concurrently houdt in dat meerdere processen
overlappen in tijd, zoals in de afbeelding te zien is.

Concurrency dealt met meerdere dingen tegelijk, maar loopt niet letterlijk tegelijk.

Documentinformatie

Geüpload op
17 december 2021
Aantal pagina's
38
Geschreven in
2020/2021
Type
SAMENVATTING

Beoordelingen van geverifieerde kopers

Alle 3 reviews worden weergegeven
3 jaar geleden

Kort maar krachtig! Vat alles van het vak super duidelijk samen!

4 jaar geleden

clear

3 jaar geleden

Thanks!

4 jaar geleden

3 jaar geleden

Hey, wat jammer om te zien dat je een lage beoordeling hebt gegeven. Wat is hier de reden van? Misschien kan ik dan aanpassingen doen.

3,7

3 beoordelingen

5
2
4
0
3
0
2
0
1
1
Betrouwbare reviews op Stuvia

Alle beoordelingen zijn geschreven door echte Stuvia-gebruikers na geverifieerde aankopen.

Maak kennis met de verkoper

Seller avatar
De reputatie van een verkoper is gebaseerd op het aantal documenten dat iemand tegen betaling verkocht heeft en de beoordelingen die voor die items ontvangen zijn. Er zijn drie niveau’s te onderscheiden: brons, zilver en goud. Hoe beter de reputatie, hoe meer de kwaliteit van zijn of haar werk te vertrouwen is.
joycevandeven Hogeschool van Amsterdam
Bekijk profiel
Volgen Je moet ingelogd zijn om studenten of vakken te kunnen volgen
Verkocht
15
Lid sinds
4 jaar
Aantal volgers
15
Documenten
2
Laatst verkocht
1 jaar geleden

3,7

3 beoordelingen

5
2
4
0
3
0
2
0
1
1

Populaire documenten

Recent door jou bekeken

Waarom studenten kiezen voor Stuvia

Gemaakt door medestudenten, geverifieerd door reviews

Kwaliteit die je kunt vertrouwen: geschreven door studenten die slaagden en beoordeeld door anderen die dit document gebruikten.

Niet tevreden? Kies een ander document

Geen zorgen! Je kunt voor hetzelfde geld direct een ander document kiezen dat beter past bij wat je zoekt.

Betaal zoals je wilt, start meteen met leren

Geen abonnement, geen verplichtingen. Betaal zoals je gewend bent via iDeal of creditcard en download je PDF-document meteen.

Student with book image

“Gekocht, gedownload en geslaagd. Zo makkelijk kan het dus zijn.”

Alisha Student

Veelgestelde vragen