Les 9: Meerdradige uitvoering
|
|
- Fenna ter Linde
- 8 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Les 9: Meerdradige uitvoering consistentie Geavanceerde computerarchitectuur Lieven Eeckhout Academiejaar Universiteit Gent
2 Overzicht Sequentiële consistentie Versoepelde consistentie Transactional memory 2
3 Geheugenconsistentie Geheugenconsistentiemodel specificeert de onderlinge volgorde van geheugenreferenties op een processor t.o.v. de geheugenreferenties van andere processors Is een integraal onderdeel van de ISA van een systeem voor multiprocessordoeleinden contract tussen de hardware en software Is van belang voor een correcte uitvoering van meerdradige applicaties 3
4 Consistentie vs coherentie Coherentie specificeert de onderlinge volgorde van geheugenreferenties naar eenzelfde geheugenlocatie Consistentiemodel specificeert de onderlinge volgorde van geheugenreferenties naar verschillende geheugenlocaties 4
5 A en B zijn gedeelde variabelen, en zijn initieel nul Draad 0 Voorbeeld Draad 1 algoritme van Dekkers A=1; if (B==0) { // critical section A=0; } B=1; if (A==0) { // critical section B=0; } Algoritme van Dekkers is een software implementatie voor locking Mutuele exclusie is gegarandeerd zolang eerst geschreven wordt en dan pas gelezen wordt Maar in OoO processor kunnen geheugenoperaties herordend worden, b.v. via load bypassing 5
6 Voorbeeld (bis) Draad 0 A=1; if (B==0) { // critical section A=0; } Draad 1 B=1; if (A==0) { // critical section B=0; } Enkele mogelijke correcte uitvoeringen: W A,0 ;R B,0 ;W B,1 ;R A,1 : draad 0 in kritische sectie W B,1 ;R A,1 ;W A,0 ;R B,0 : draad 1 in kritische sectie Een incorrecte uitvoering: R B,0 ;R A,1 ;W A,0 ;W B,1 : beide draden in kritische sectie R B,0 ;W B,1 ;R A,1 ;W A,0 : beide draden in kritische sectie W = write; R = read; subscript X,n = op geheugenlocatie X door draad n 6
7 Voorbeeld (ter) Draad 1 A=1; if (B==0) { critical section A=0; } Draad 2 B=1; if (A==0) { critical section B=0; } B.v. indien de leesoperatie vóór de schrijfoperatie uitgevoerd kan worden (load bypassing wegens niet-identieke adressen) Mutuele exclusie is niet langer gegarandeerd 7
8 Consistentiemodellen Twee types Sequentiële consistentie (SC) Sequential consistency Totale ordening tussen alle geheugenoperaties van alle processors Versoepelde consistentie Relaxed consistency Partiële ordening tussen de geheugenoperaties van alle processors Betere prestatie omdat totale ordening niet steeds nodig is 8
9 Sequentiële consistentie Totale ordening tussen alle geheugenreferenties van alle processors Door Lamport in 1979 Alsof alle processors alle gedeelde variabelen om beurt lezen en schrijven; bovendien is de ordening per draad zoals opgelegd door de programmavolgorde Conceptueel: ordening in een time-sharing systeem == multiprocessor met SC Eenvoudig voor programmeur 9
10 Sequentiële consistentie Processors issuing memory references as per program order P 1 P 2 P n The switch is randomly set after each memory reference Memory Uit Culler, Singh en Gupta Parallel Computer Architecture The result of the execution is the same as if the operations of all processors are executed in some sequential order, and the operations of each individual processor appear in the order specified by its program. (Lamport, 1979) 10
11 Draad 1 ld A; ld B; st C; st A; ld A; st B; Voorbeelden een SC uitvoering een andere SC uitvoering draad 1 draad 2 draad 1 draad 2 Draad 2 st B; ld A; ld C; st A; st B; ld B; ld A ld B st C st B ld A ld A ld B st C st B st A ld A ld C st A st B st A ld A st B ld A ld C st A st B ld B st B ld B 11
12 Waarom SC? Is een eenvoudig en intuïtief programmeermodel Heel wat legacy code werd geschreven voor time-sharing omgeving Men wil dat die code ook werkt op MP systeem Men wil inspanningen niet doen om code te herschrijven 12
13 SC: bespreking SC implementeren op een efficiënte manier voor goede prestatie is niet eenvoudig Wegens Totale ordening van geheugenoperaties per draad ( OoO paradigma) Totale ordening van geheugenoperaties van alle processors Vereist zeer veel bandbreedte over interconnectie 13
14 Maar... Totale ordening is niet steeds nodig Dus: versoepelen Enkel die geheugenreferenties ordenen die in volgorde uitgevoerd moeten worden teneinde de echte afhankelijkheden te respecteren Enkel ordening op gedeelde variabelen Betere prestatie en illusie van SC uitvoering Merk op: niet hetzelfde als versoepelde consistentie (zie later) Versoepeling op microarchitecturaal niveau versus op architecturaal niveau ~ OoO uitvoering van afhankelijkheden via registers en geheugen in OoO processor 14
15 SC implementeren Via cachecoherentie worden RAW afhankelijkheden tussen verschillende processors gerespecteerd Indien CPU A een variabele leest die geschreven wordt door CPU B, moet eerst de variabele in CPU A ongeldig gemaakt worden om nadien de nieuwe waarde te kopiëren van CPU B naar CPU A Indien geen coherentietrafiek (invalidates en/of cache misses), zijn er geen afhankelijkheden tussen de CPUs 15
16 SC implementeren (bis) M.a.w. geen consistentieregels nodig voor cache hits tussen coherentietrafiek (invalidate en/of cache miss) Geen interventie voor een groot deel van de geheugenoperaties wegens cache hits Twee overblijvende problemen Lokaal probleem: ordening van cache hits t.o.v. coherentietrafiek Globaal probleem: ordening van invalidates en cache misses 16
17 Globale probleem Er is ergens in het systeem één punt nodig waar de cache misses en invalidaties geordend worden Kleine multiprocessor met gedeelde bus Toegang tot de bus wordt geordend Grote multiprocessor met een directory Toegangen ordenen aan de ingang van de directory of in de interconnectie 17
18 Lokale probleem Ordenen van cache hits t.o.v. coherentietrafiek Eenvoudig in OoO processor De load/store queue uitbreiden om ook adressen van de globale stroom te bekijken Gebeurt toch reeds voor respecteren van RAW afhankelijkheden tussen geheugenoperaties (zie vroeger) 18
19 M.a.w. speculatie We speculeren dat een geheugenoperatie niet geordend moet worden Indien later blijkt dat ordening vereist is, heruitvoeren Dit mechanisme is reeds aanwezig voor de OoO uitvoering van geheugenoperaties (load bypassing en load forwarding) We hebben dus een mechanisme nodig om inbreuk op de ordening te detecteren 19
20 Uitbreiding in OoO processor finished load buffer OoO processorkern bus upgrades bus writes CPU B CPU C CPU D in-order commit CPU A bus 20
21 Detectie van inbreuk op ordening We markeren een speculatieve leesoperatie indien die hetzelfde adres refereert als het adres dat op de bus verschijnt t.g.v. een externe schrijfoperatie Bij completion van een gemarkeerde leesoperatie, de leesoperatie beschouwen als een foutief voorspelde sprong De leesoperatie en alle daarop volgende instructies opnieuw ophalen en uitvoeren Geïmplementeerd in MIPS R10K, HP PA-8000 en Intel Pentium Pro 21
22 Voorbeeld 1 Draad 1 Draad 2 st A=1 ld B ld A... ld B st A coherentie ld A execute commit ld B ld A 22
23 Voorbeeld 2 Draad 1 st A=1 if (ld B==0) { // critical section st A=0 } ld B Draad 2 st B=1 if (ld A==0) { // critical section st B=0 } st B=1 st A=1 beiden in kritische sectie ld A ld A st B=0 execute commit ld B st A=0 23
24 Voorbeeld 2 (bis) Draad 1 st A=1 if (ld B==0) { // critical section st A=0 } ld B Draad 2 st B=1 if (ld A==0) { // critical section st B=0 } st B=1 ld A ld A st A=1 st B=0 execute commit ld B ld B st A=0 24
25 SC versoepelen in hardware Wordt vaak toegepast MIPS R10K, HP PA-8000, Intel Pentium Pro Heeft beperkingen Vereist extra hardware Niet alle processors ondersteunen dit Toepasbaarheid is beperkt tot de processor Dit is een microarchitecturale optimalisatie Compiler is niet in staat instructies te herordenen 25
26 Overzicht Sequentiële consistentie Versoepelde consistentie Transactional memory 26
27 Relaxed Consistency Waarom niet het geheugenmodel wijzigen/versoepelen? Relaxed memory consistency model Idee Eenvoudige hardware Programmeur/compiler moet geheugenoperaties aanduiden die geordend moeten worden Alle andere operaties hoeven niet geordend te worden Voordelen Stelt compiler én processor in staat geheugenoperaties te herordenen 27
28 Versoepelde geheugenmodellen Groep 1: een leesoperatie kan een schrijfoperatie bypassen TSO, PC Groep 2: een schrijfoperatie kan ook een schrijfoperatie bypassen PSO Groep 3: lees- en schrijfoperaties kunnen ook leesoperaties bypassen WO, RC, RMO, Alpha, PowerPC [Merk op: een read-modify-write instructie is een lees- én schrijfoperatie] 28
29 Groep 1: Versoepelen van schrijf-lees ordening Een leesoperatie kan een schrijfoperaties bypassen Kortere latentie leesoperatie Latentie verbergen van schrijfoperatie 2 varianten TSO: total store ordering Garandeert write atomicity Write atomicity = alle schrijfoperaties (tot om het even welke geheugenlocatie) zijn zichtbaar voor alle processors in dezelfde ordening PC: processor consistency Garandeert geen write atomicity, enkel totale ordening van schrijfoperaties per processor 29
30 Fragment 1 Draad 1 A = 1; flag = 1; Draad 2 while (flag == 0); print A; TSO en PC garanderen SC semantiek 30
31 Fragment 2 A = 1; B = 1; Draad 1 print B; print A; Draad 2 SC garandeert dat Indien 1 geprint wordt voor B, ook 1 geprint wordt voor A Zo ook TSO en PC 31
32 Fragment 3 Draad 1 Draad 2 Draad 3 A = 1; while (A == 0); B = 1; while (B == 0); print A; SC garandeert dat A als 1 geprint wordt Zo ook TSO Maar niet PC Schrijfoperatie B=1; kan vroeger zichtbaar zijn voor draad 3 dan schrijfoperatie A=1; Dit kan optreden tgv. buffering in processor, cache en geheugencontroller, interconnectienetwerk, etc. 32
33 Fragment 4 A = 1; print B; Draad 1 B = 1; print A; Draad 2 SC garandeert dat Onmogelijk 0 geprint wordt voor zowel A als B Dit is de basis voor Dekker s algoritme Software manier voor mutuele exclusie Maar niet TSO en PC Omdat een leesoperatie een schrijfoperatie kan bypassen M.a.w., Dekker s algoritme werkt niet in TSO en PC 33
34 Hoe SC garanderen wanneer nodig in TSO/PC model? Mechanisme nodig dat garandeert dat (a) Een leesoperatie niet vóór een schrijfoperatie (waarbij lees- na schrijfoperatie komt in programmavolgorde) uitgevoerd wordt (b) Write atomicity vóór een leesoperatie (a) Kan gegarandeerd worden via MEMBAR (memory barrier) of FENCE instructies 34
35 Memory barriers Een barrier is een instructie Bestaat typisch in verschillende varianten voor verschillende ordeningen Hier: write-to-read MEMBAR Alle schrijfoperaties vóór de barrier moeten uitgevoerd zijn alvorens de uitvoering van de leesoperatie gestart kan worden B.v. fragment 4: Draad 1 A = 1; w2r_membar; print B; Draad 2 B = 1; w2r_membar; print A; 35
36 SC semantiek bij TSO/PC MEMBAR vóór de leesoperatie OF De leesoperatie vervangen door een readmodify-write instructie Leesoperatie wordt behandeld als een schrijfoperatie, dus geen herordening 36
37 Barrier implementatie Processor blokkeren (stall) tot alle voorgaande geheugenoperaties architecturaal gezien uitgevoerd zijn (completed) Vereist inspecteren ROB store buffer alle invalidaties in andere CPUs tgv. een store vóór de barrier moeten afgehandeld zijn Kan honderden processorcycli duren 37
38 Groep 2: Versoepelen van schrijf-schrijf ordening Een schrijfoperatie kan ook een schrijfoperatie (naar een andere geheugenlocatie) bypassen Laat write buffer merging toe Latentie van schrijfoperaties verbergen PSO: partial store ordering Sun Sparc Garandeert ook write atomicity 38
39 Fragment 1 Draad 1 A = 1; flag = 1; Draad 2 while (flag == 0); print A; TSO en PC garanderen SC semantiek PSO niet 39
40 Fragment 2 A = 1; B = 1; Draad 1 print B; print A; Draad 2 SC garandeert dat Indien 1 geprint wordt voor B, ook 1 geprint wordt voor A Zo ook TSO en PC Is niet het geval voor PSO 40
41 Fragment 3 Draad 1 Draad 2 Draad 3 A = 1; while (A == 0); B = 1; while (B == 0); print A; SC garandeert dat A als 1 geprint worden Zo ook TSO en PSO Wegens write atomicity Maar niet PC Wegens geen write atomicity 41
42 Fragment 4 A = 1; print B; Draad 1 B = 1; print A; Draad 2 SC garandeert dat Onmogelijk 0 geprint wordt voor zowel A als B Maar niet voor TSO, PC en PSO Omdat een leesoperatie een schrijfoperatie kan bypassen 42
43 Hoe SC garanderen wanneer nodig in PSO model? Via write-to-write MEMBAR of STBAR Alle schrijfoperaties vóór de barrier moeten uitgevoerd zijn alvorens de uitvoering van de volgende schrijfoperatie gestart kan worden B.v. fragment 1: Draad 1 A = 1; w2w_membar; flag = 1; Draad 2 while (flag == 0); print A; 43
44 Groep 3: Alle ordeningen versoepelen Geen enkele programma-ordening wordt gegarandeerd Bovenop groep 1 en 2: lees- en schrijfoperaties kunnen ook leesoperaties bypassen Verbergen van latentie tgv. leesoperaties Out-of-order uitvoering van leesoperaties Maakt heel wat compileroptimalisaties mogelijk 44
45 Verschillende modellen WO: weak ordering RC: release consistency Commerciële implementaties RMO: relaxed memory ordering Sun Sparc V9 Digital Alpha IBM PowerPC 45
46 WO: Weak Ordering Idee: Parallelle programma s gebruiken synchronisatie-operaties om geheugentoegangen te coördineren Tussen synchronisatie-operaties: geen ordening van geheugenoperaties 46
47 Voorbeeld Draad 1... lock (taskq); newtask->next = head; if (head!= NULL) head->prev = newtask; head = newtask; unlock (taskq);... Draad 2... lock (taskq); newtask->next = head; if (head!= NULL) head->prev = newtask; head = newtask; unlock (taskq);... Semantiek blijft behouden Ondanks herordeningen tss. synchronisatie-operaties Zolang geheugenoperaties niet herordend worden tov. synchronisatie-operaties, en vice versa 47
48 SYNC operatie Alle geheugenoperaties vóór de SYNC operatie moeten uitgevoerd zijn alvorens de uitvoering van de volgende geheugenoperatie gestart kan worden read/write read/write SYNC read/write read/write SYNC read/write read/write 48
49 RC: Release Consistency Draad 1... lock (taskq); newtask->next = head; if (head!= NULL) head->prev = newtask; head = newtask; unlock (taskq);... acquire: toegang krijgen tot code of variabelen release: toegang verlenen (aan andere processor) tot code of variabelen Uitbreiding op WO model door onderscheid te maken tussen verschillende types van synchronisatie 49
50 Acquire en Release Acquire Alle geheugenoperaties die volgen op de acquire kunnen niet uitgevoerd worden vóór de acquire acquire mag herordend worden tov. voorgaande operaties Release Alle geheugenoperaties die komen vóór de release moeten uitgevoerd zijn alvorens de release uit te voeren Operaties volgend op de release kunnen herordend worden tov. de release 50
51 read/write read/write SYNC read/write read/write SYNC read/write read/write Weak Ordering read/write read/write 1 acquire read/write read/write 2 release Release Consistency read/write read/write 3 51
52 Commerciële implementaties Veronderstellen geen ordening Verschillen in de instructies die aangeboden worden om een ordening op te leggen Memory barriers Of fences genaamd ISA-specifiek 52
53 Voorbeeld 1: Digital Alpha Twee soorten fence instructies Memory barrier (MB) = synchronisatie-operatie zoals in WO Write memory barrier (WMB) = STBAR in PSO; legt enkel ordening op voor schrijfoperaties 53
54 Voorbeeld 2: Sun Sparc V9 RMO Relaxed memory ordering MEMBAR fence instructie met 4 flavor bits Read-to-read Read-to-write Write-to-read Write-to-write Elke combinatie van bits kan aangezet worden 54
55 Voorbeeld 3: IBM PowerPC Eén enkele fence instructie sync zoals MB instructie in Alpha ISA Geen write atomicity 55
56 56 SYNC neen ja ja ja PowerPC MB, WMB ja ja ja ja Alpha MEMBARs ja ja ja ja RMO REL, ACQ ja/neen ja ja ja RC SYNC ja ja ja ja WO STBAR ja ja ja PSO MEMBAR neen ja PC MEMBAR ja ja TSO ja SC operaties write atomicity r-to-r/w reorder w-to-w reorder w-to-r reorder model
57 Hardware/software interface Redeneren over toegelaten herordeningen is niet eenvoudig Ook portabiliteit is een mogelijks probleem B.v. een programma dat correct uitvoert op een TSO systeem zal niet correct uitvoeren op een RMO systeem Programmeermodel is vaak geïnspireerd op WO/RC modellen Programmeur moet synchronisatie toevoegen Compiler vertaalt synchronisatie in fence instructies Compiler en hardware herordenen geheugenoperaties 57
58 SC PC Consistentiemodellen in commerciële processors SGI MIPS Intel Pentium processor familie TSO Veel Sun Microsystems machines Geen ordening, enkel fence instructies Digital Alpha, IBM PowerPC, Sun Sparc V9 58
59 Overzicht Sequentiële consistentie Versoepelde consistentie Transactional memory 59
60 TM: motivatie We gaan het multi-core tijdperk in Zie volgende les Huidig programmeermodel op basis van synchronisatie via locks is ontoereikend Niet robust Moeilijk efficiënte code te schrijven Software met locks is niet composable 60
61 Locks zijn niet robust Stel: draad 1 neemt de lock en de load operatie (ld r1,a) veroorzaakt een page fault Zeer lange latentie Terwijl draad 1 de lock vasthoudt Draad 2 blijft in spin loop geen vooruitgang Draad 1 spin: cmpswp AL,1 bfail spin ld r1,a add r1,r1,1 st r1,a st 0,AL Draad 2 spin: cmpswp AL,1 bfail spin ld r1,a add r1,r1,3 st r1,a st 0,AL 61
62 Programmeren met locks is niet eenvoudig Coarse-grained locking Eenvoudig te programmeren Slechte prestatie Fine-grained locking Goede prestatie Moeilijk te programmeren 62
63 Software met locks is niet composable (1/2) lock T 1 hash tabel eerst lock nemen op T 1 add(t 1,item) item alvorens item toe te voegen kopieer element van T 1 naar T 2 delete(t 1,item) lock T 1 lock T 2 add(t 2,item) item item eerst lock nemen op T 2 alvorens item te verwijderen uit T 1 63
64 Software met locks is niet composable (2/2) kopieer element van T 1 naar T 2 delete(t 1,item) lock T 1 lock T 2 add(t 2,item) item item eerst lock nemen op T 2 alvorens item te verwijderen uit T 1 Stel: we willen deze methode als interface aanbieden Wat gebeurt er indien draad 1 een element wil kopiëren van T1 naar T2, en draad 2 van T1 naar T2? Mogelijks een deadlock Draad 1 neemt lock op T2, en draad 2 neemt lock op T1 Draad 1 probeert nadien lock to nemen op T2, en draad 2 probeert lock te nemen op T1 geen van beide maakt vooruitgang 64
65 Transactional Memory: basisidee Meerdere draden proberen gelijktijdig een kritische sectie te betreden op een atomaire manier Indien dat lukt: prima, pas architecturale toestand aan: commit Indien dat niet lukt: herstel de toestand zoals aan het begin van de kritische sectie (abort) en probeer opnieuw Programmeur specificeert de kritische secties maar zegt niet hoe dat moet gegarandeerd worden Dat gebeurt door het onderliggende TM systeem Draad 1 atomic{ ld r1,a add r1,r1,1 st r1,a } Draad 2 atomic{ ld r1,a add r1,r1,3 st r1,a } 65
66 Programmeren in TM lock (L); x++; unlock (L); atomic { x++; } Dit is wat de programmeur specificeert Het onderliggende systeem (compiler, VM, hardware, etc.) garandeert correcte uitvoering 66
67 Transactional Memory (1/2) Transactie Atomaire eenheid Een sequentie van operaties die ofwel volledig uitgevoerd wordt (commit), ofwel geen effect heeft (abort) Door programmeur gedefinieerd Gebaseerd op DBMS Toegang tot gemeenschappelijke data zonder locks Indien een conflict, herstel toestand, en probeer opnieuw 67
68 Transactional Memory (2/2) Alles of niets benadering: atomicity Bij commit, alle geheugenoperaties hebben terzelfdertijd effect Bij abort, geen enkele schrijfoperatie heeft effect Transactie is geïsoleerd: isolation Het effect van schrijfoperaties is enkel zichtbaar voor andere draden bij commit Geeft de illusie aan programmeur van seriële uitvoering Geen conflicterende geheugentoegangen door parallelle transacties vanuit andere draden Lost veel problemen van locks op: TM is robust, eenvoudig te programmeren, composable 68
69 TM: schaalbaarheid Parallelle leesoperaties tot dezelfde data Locks laten geen meerdere lezers toe TM wel, op automatische manier Parallelle lees- en schrijfoperaties tot disjuncte data Programmeur kan fine-grain locking toevoegen Niet eenvoudig Niet modulair TM garandeert fine-grain locking op automatische manier 69
70 TM implementatie (1) Data versioning Het beheren van verschillende versies van dezelfde data Twee benaderingen Eager versioning Past geheugentoestand onmiddellijk aan; en houdt undo log bij Snelle commit; trage abort Lazy versioning Houdt schrijfoperaties bij in buffer; past geheugentoestand aan bij commit Trage commit; snelle abort 70
71 Eager versioning begin van de transactie schrijf X 15 draad draad Undo Log X: 10 Undo Log X: 10 geheugen X: 15 geheugen commit transactie abort transactie draad draad X: 10 Undo Log X: 10 Undo Log X: 15 geheugen X: 10 geheugen 71
72 Lazy versioning begin van de transactie schrijf X 15 draad draad Write Buffer X: 15 Write Buffer X: 10 geheugen X: 10 geheugen commit transactie abort transactie draad draad X: 15 Write Buffer X: 15 Write Buffer X: 15 geheugen X: 10 geheugen 72
73 TM implementatie (2) Per transactie hebben we een een Read Set, en Geheugenlocaties gelezen door de transactie een Write Set Geheugenlocaties geschreven door de transactie Conflict treedt op indien ene draad een variabele leest die een andere draad wil schrijven Conflictdetectie op basis van vergelijken Read en Write Sets 73
74 TM implementatie (2) bis Conflictdetectie: twee benaderingen Optimistische benadering Bekijk lees- en schrijfoperaties enkel bij commit Veronderstel dat er geen conflicten zullen zijn Pessimistische benadering Bekijk lees- en schrijfoperaties tijdens uitvoering van transactie Gebruik contention manager om te beslissen over (i) stall, of (ii) abort (restart) Optimaliseer meest voorkomende geval 74
75 Optimistische detectie D1 D2 D1 D2 D1 D2 D1 D2 rd A wr A rd A rd A wr A wr B rd A wr A rd A wr A wr C commit restart commit commit restart commit commit rd A rd A wr A commit commit commit tijd succes abort succes abort 75
76 Pessimistische detectie D1 D2 D1 D2 D1 D2 D1 D2 rd A wr A rd A rd A wr A wr B rd A wr A rd A wr A stall restart restart wr C commit rd A commit rd A wr A commit rd A restart commit commit commit rd A wr A tijd succes stall abort restart geen 76 vooruitgang
77 Conflictdetectie Pessimistisch + Snelle detectie van conflicten Geen garantie voor vooruitgang; meer aborts Fine-grain communicatie Optimistisch + Garantie voor vooruitgang + Potentieel minder conflicten + Coarse-grain communicatie Trage detectie van conflicten 77
78 Transactional Memory Onderwerp van huidig onderzoek TM API Verschillende mogelijke TM implementaties Software Hardware Hybride software/hardware implementaties Ondersteuning in Sun Rock processor 78
Examen Geavanceerde Computerarchitectuur
Examen Geavanceerde Computerarchitectuur Academiejaar 2006-2007 Dinsdag 16 januari 2007, 14u00 Prof. dr. ir. L. Eeckhout Richting: Enkele opmerkingen vooraf: Vul eerst en vooral op ieder blad Uw naam en
Nadere informatieExamen Geavanceerde Computerarchitectuur
Examen Geavanceerde Computerarchitectuur Academiejaar 2010-2011 Maandag 17 januari 2010, 8u30 Prof. dr. ir. L. Eeckhout Naam: Richting: Enkele opmerkingen vooraf: Vul eerst en vooral op ieder blad Uw naam
Nadere informatieExamen Geavanceerde Computerarchitectuur
Examen Geavanceerde Computerarchitectuur Academiejaar 2007-2008 Maandag 21 januari 2008, 14u00 Prof. dr. ir. L. Eeckhout Naam: Richting: Enkele opmerkingen vooraf: Vul eerst en vooral op ieder blad Uw
Nadere informatieComputerarchitectuur. Terugblik / discussie / oefenopgaven
Computerarchitectuur Terugblik / discussie / oefenopgaven Kristian Rietveld http://ca.liacs.nl/ Trends & Performance Voorkennis We bouwden een 4-bit microprocessor bij Digitale Technieken. Bij computerarchitectuur
Nadere informatieLes 11: systeemarchitectuur virtuele machines
Les 11: systeemarchitectuur virtuele machines Geavanceerde computerarchitectuur Lieven Eeckhout Academiejaar 2008-2009 Universiteit Gent Virtuele machines Motivatie Interfaces Virtualisatie: inleiding
Nadere informatieExamen Geavanceerde Computerarchitectuur
Examen Geavanceerde Computerarchitectuur Academiejaar 2008-2009 Maandag 30 januari 2009, 14u00 Prof. dr. ir. L. Eeckhout Voornaam: Naam: Richting: Enkele opmerkingen vooraf: Vul eerst en vooral op ieder
Nadere informatieGelijktijdigheid: Wederzijdse Uitsluiting & Synchronisatie Concurrency: Mutual Exclusion & Synchonization (5e ed: 5.1-5.2, Appendix A.
Gelijktijdigheid: Wederzijdse Uitsluiting & Synchronisatie Concurrency: Mutual Exclusion & Synchonization (5e ed: 51-52, Appendix A1) Processes zijn meestal niet onafhankelijk Bijvoorbeeld: 2 processen
Nadere informatiecomputerarchitectuur antwoorden
2017 computerarchitectuur antwoorden F. Vonk versie 1 2-8-2017 inhoudsopgave hardware... - 3 - CPU... - 3 - bussen... - 4 - bridges... - 4 - RAM... - 4 - hardware architectuur... - 5 - Dit werk is gelicenseerd
Nadere informatieLes 4: geheugenstroom in outof-order
Les 4: geheugenstroom in outof-order microarchitectuur Geavanceerde computerarchitectuur Lieven Eeckhout Academiejaar 2008-2009 Universiteit Gent Overzicht Geheugenhiërarchie (herhaling Computerarchitectuur
Nadere informatieinformatica. hardware. overzicht. moederbord CPU RAM GPU architectuur (vwo)
informatica hardware overzicht moederbord CPU RAM GPU architectuur (vwo) 1 moederbord basis van de computer componenten & aansluitingen chipset Northbridge (snel) Southbridge ("traag") bussen FSB/HTB moederbord
Nadere informatieOefeningenlessen Geavanceerde Computerarchitectuur
Oefeningenlessen Geavanceerde Computerarchitectuur Lieven Eeckhout Academiejaar 2010-2011 Hybride tournament sprongvoorspeller Beschouw een hybride tournament sprongvoorspeller bestaande uit een bimodale
Nadere informatieMulti-core systemen. door Alexander Melchior
Multi-core systemen Multi-cpu & Multi-core Multi cpu & Multi core door Alexander Melchior Toevoeging aan GDP Overdragen Capita Selecta Waarom? Een stukje geschiedenis 2005: Introductie eerste consumenten
Nadere informatieUitwerking oefententamen Computerarchitectuur December 2016
Uitwerking oefententamen Computerarchitectuur December 2016 I.a. De overall CPI kan worden berekend met de formule n IC i CPI Instruction count CPI i voor de ratio vullen we telkens de geven frequentie
Nadere informatieComputerarchitectuur. H&P Ch 5. Thread-Level Parallelism
Computerarchitectuur H&P Ch 5. Thread-Level Parallelism Kristian Rietveld http://ca.liacs.nl/ Thread-Level Parallelism In het geval van thread-level parallelism (TLP) gaan we uit van meerdere threads.
Nadere informatieComputerarchitectuur. H&P App. C. Pipelining
Computerarchitectuur H&P App. C. Pipelining Kristian Rietveld http://ca.liacs.nl/ Motivatie Pipelining is een techniek die tegenwoordig in iedere CPU wordt gebruikt om de performance te verbeteren. Idee:
Nadere informatieExamen Geavanceerde Computerarchitectuur
Examen Geavanceerde Computerarchitectuur Academiejaar 2009-2010 Maandag 4 januari 2010, 14u00 Prof. dr. ir. L. Eeckhout Naam: Richting: Enkele opmerkingen vooraf: Vul eerst en vooral op ieder blad Uw naam
Nadere informatieComputerarchitectuur en netwerken. Memory management Assembler programmering
Computerarchitectuur en netwerken 2 Memory management Assembler programmering Lennart Herlaar 10 september 2018 Inhoud 1 Protectie: Hoe het O.S. programma s tegen elkaar kan beschermen modes memory management
Nadere informatieDigitale en analoge technieken
Digitale en analoge technieken Peter Slaets February 14, 2006 Peter Slaets () Digitale en analoge technieken February 14, 2006 1 / 33 Computerarchitectuur 1 Processors 2 Primair geheugen 3 Secundair geheugen
Nadere informatieBeter, Sneller, Mooier. Processoren 12 januari 2015
Beter, Sneller, Mooier Processoren 12 januari 2015 Beter! Sneller! Krachtigere CPU: maak instructies die meer doen Snellere CPU: pipeline, out-of-order execution Sneller RAM: cache meer mogelijkheden...
Nadere informatie1 Aanvulling cosy deeltijd
1 Aanvulling cosy deeltijd 1.1 Multiprocessor versus multicomputer Het kenmerk van een multiprocessor is dat meer CPU hetzelfde geheugen delen. Voordeel van deze aanpak is het relatief eenvoudige programmeermodel.
Nadere informatieGeheugenbeheer. ICT Infrastructuren 2 december 2013
Geheugenbeheer ICT Infrastructuren 2 december 2013 Doelen van geheugenbeheer Reloca>e (flexibel gebruik van geheugen) Bescherming Gedeeld/gemeenschappelijk geheugen Logische indeling van procesonderdelen
Nadere informatieSemaforen. Semaforen p. 1/2
Semaforen 2008 Semaforen p. 1/2 Vorige Keer mbv mutual exclusion kritieke sectie (cs) 1. software : Dekker s, Peterson s algoritme 2. hardware: uniprocessor machine: disable interrupts 3. hardware: multiprocessor
Nadere informatieComputerarchitectuur en netwerken. Memory management Assembler programmering
Computerarchitectuur en netwerken 2 Memory management Assembler programmering Lennart Herlaar 12 september 2016 Inhoud 1 Protectie: Hoe het O.S. programma s tegen elkaar kan beschermen modes memory management
Nadere informatieComputerarchitectuur. App. B. Review of Memory Hierarchy
Computerarchitectuur App. B. Review of Memory Hierarchy Kristian Rietveld http://ca.liacs.nl/ Caching De memory wall is een zeer groot probleem dat vraagt om oplossingen. De gebruikelijke oplossing is
Nadere informatieComputerarchitectuur en netwerken Toets 1 4 okt
11.00 13.00 De open vragen moet je beantwoorden op tentamenpapier. De multiple-choice antwoorden moet je op het vragenblad invullen in de rechtervakjes en dat blad inleveren. Schrijf je naam, studentnummer
Nadere informatieRacedetectie in Parallelle Programma s door Gecontroleerde Heruitvoering
Racedetectie in Parallelle Programma s door Gecontroleerde Heruitvoering Michiel Ronsse Promotoren: Prof. dr. ir. K. De Bosschere Prof. dr. ir. J. Van Campenhout Proefschrift ingediend tot het behalen
Nadere informatieMemory Management. Virtual Memory. Eisen Memory Management. Verdelen geheugen over meerdere processen
Memory Management Process control information Entry point to program Process Control Block Verdelen geheugen over meerdere processen Program Branch instruction Virtual Memory Data Reference to data Processen
Nadere informatievon-neumann-architectuur Opbouw van een CPU Processoren 1 december 2014
von-neumann-architectuur Opbouw van een CPU Processoren 1 december 2014 Herhaling: Booleaanse algebra (B = {0,1},., +, ) Elke Booleaanse functie f: B n B m kan met., +, geschreven worden Met Gates (electronische
Nadere informatieOpgaven Registers Concurrency, 29 nov 2018, Werkgroep.
Opgaven Registers Concurrency, 29 nov 2018, Werkgroep. Gebruik deze opgaven om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht opgaven. 1. Safe Integer: Van een
Nadere informatieExtra details van de performance in de database kunt u zien met het Top Activity scherm dat u van hieruit kunt tonen.
Real-time performance diagnose in Oracle In Oracle 10g en 11g is het mogelijk om de database performance real-time te volgen, als u de licentie voor Diagnostics Pack heeft aangeschaft (en de Enterprise
Nadere informatieTECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica
TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Deel-tentamen Operating Systemen (2IN05) op vrijdag 5 oktober 2007, 9.00-10.30 uur. Het tentamen bestaat uit twee delen die apart worden
Nadere informatieNederlandse samenvatting (Dutch summary)
Nederlandse samenvatting (Dutch summary) Ditproefschriftpresenteerteen raamwerk voorhetontwikkelenvanparallellestreaming applicaties voor heterogene architecturen met meerdere rekeneenheden op een chip.
Nadere informatieComputerarchitectuur. Hoofdstuk 3: Instruction-Level Parallelism
Computerarchitectuur Hoofdstuk 3: Instruction-Level Parallelism Kristian Rietveld http://ca.liacs.nl/ Instruction-level Parallelism Doel: gebruik maken van potentiële overlap tussen opeenvolgende instructies.
Nadere informatieTI-2720 Operating System Concepten. 6 november 2012, uur. docent: H.J. Sips. Dit is een tentamen met 9 open vragen
TECHNISCHE UNIVERSITEIT DELFT Faculteit Elektrotechniek, Wiskunde en Informatica Sectie Parallelle en Gedistribueerde Systemen TUDelft TI-2720 Operating System Concepten 6 november 2012, 14.00-17.00 uur.
Nadere informatieTentamen Computersystemen
Tentamen Computersystemen baicosy6 2e jaar bachelor AI, 2e semester 21 oktober 213, 9u-11u OMHP D.9 vraag 1 Van een Single Cycle Harvard machine hebben de componenten de volgende propagation delay time:
Nadere informatieVraag 1 (2 punten) (iii) Een lees-opdracht van virtueel adres 2148 seg 0, offset 2148 - idem
Tentamen A2 (deel b) 24-06-2004 Geef (liefst beknopte en heldere) motivatie bij je antwoorden; dus niet enkel ja of nee antwoorden, maar ook waarom. Geef van berekeningen niet alleen het eindresultaat,
Nadere informatieSequentiële gepijplijnde machine
Sequentiële gepijplijnde machine Samenvatting controlesignalen Als we de controlesignalen van vorig hoofdstuk nemen, kunnen we per cyclus een naam geven aan de stap. We plaatsen hiervoor wel de registerbeschrijving
Nadere informatieBenchmarking van transactioneel geheugen
Benchmarking van transactioneel geheugen Stijn Polfliet Promotor: prof. dr. ir. Lieven Eeckhout Masterproef ingediend tot het behalen van de academische graad van Master in de ingenieurswetenschappen:
Nadere informatieHoofdstuk 3: Processen: Beschrijving en Besturing. Wat is een proces? Waarom processen? Wat moet het OS ervoor doen? Is het OS zelf een proces?
Hoofdstuk 3: Processen: Beschrijving en Besturing Wat is een proces? Waarom processen? Wat moet het OS ervoor doen? Is het OS zelf een proces? 1 Wat is een proces? Een proces is een programma in uitvoering
Nadere informatieHigh Performance Computing
High Performance Computing Kristian Rietveld (krietvel@liacs.nl, kamer 138) Groep Computer Systems High-Performance Computing Optimizing compilers (generieke codes, maar ook specifieke rekenkernels). Parallel
Nadere informatiecomputerarchitectuur F. Vonk versie
2017 computerarchitectuur F. Vonk versie 1 2-8-2017 inhoudsopgave 1. inleiding... - 3-2. hardware... - 4-3. moederbord... - 5-4. CPU... - 7-5. bussen... - 12-6. bridges... - 15-7. RAM... - 16-8. hardware
Nadere informatieGeheugenbeheer. ICT Infrastructuren. hoofdstukken 7 en 8.1
Geheugenbeheer ICT Infrastructuren hoofdstukken 7 en 8.1 Eenvoudig geheugenbeheer OS gebruikt een klein stukje geheugen rest is voor gewone processen OS vrij 0 1000 Eenvoudig geheugenbeheer OS gebruikt
Nadere informatieExamen computerarchitectuur
Examen computerarchitectuur Vrijdag 6 juni 2008, 14:00 Prof. Koen De Bosschere Naam, Voornaam: Richting: Belangrijk 1. Vergeet niet uw naam en voornaam te vermelden. 2. Schrijf de antwoorden in de daarvoor
Nadere informatieTim Mallezie Architectuur van besturingssystemen: Vraag A2.
Procesbeheer: kenmerken van moderne besturingssystemen. 1. Bespreek de (drie) meest typische kenmerken van moderne besturingssystemen. 2. In hoeverre beantwoorden UNIX, Linux en Windows NT hieraan? Geef
Nadere informatieTake-home Tentamen Protocolvericatie. Universiteit van Amsterdam. 27 Maart 1994
Take-home Tentamen Protocolvericatie Vakgroep Programmatuur Universiteit van Amsterdam 27 Maart 1994 Algemene Opmerkingen Dit tentamen omvat zes reguliere opgaven plus een bonusopgave. Opgaves 1, 2, 5
Nadere informatieVan Poort tot Pipeline. Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam
Van Poort tot Pipeline Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam Van Poort tot Pipeline Pipeline processor One cycle machine Calculator File of registers Assembly
Nadere informatieICT Infrastructuren: Processen en Threads. 18 november 2013 David N. Jansen
ICT Infrastructuren: Processen en Threads 18 november 2013 David N. Jansen Datum en Ajd van werkcollege na overleg met de aanwezigen: donderdag 8:45 10:30 Leerdoel voor vandaag. Stallings hoofdst 2 4 Hoofddoelen
Nadere informatieOefeningen Interpretatie I Reeks 6 : Registermachines
Oefeningen Interpretatie I Reeks 6 : Registermachines Deze oefeningenreeks behandelt het beschrijven van computationele processen aan de hand van registermachineprogrammaʼs. Registermachines manipuleren
Nadere informatieFAT32 disk structuur 2007 stam.blogs.com
FAT32 disk structuur 2007 stam.blogs.com Master Boot Record De Master Boot Record is vrijwel hetzelfde voor alle besturingssystemen. Het ligt binnen de eerste sector van de harddisk: Cylinder 0, Head 0,
Nadere informatieONTWERP VAN GEDISTRIBUEERDE SOFTWARE ACADEMIEJAAR 2009-2010 1 STE EXAMENPERIODE, 15 JANUARI 2010, 14U 17U30 VRAAG 1: INLEIDENDE BEGRIPPEN[20 MIN]
ONTWERP VAN GEDISTRIBUEERDE SOFTWARE ACADEMIEJAAR 2009-2010 1 STE EXAMENPERIODE, 15 JANUARI 2010, 14U 17U30 Naam :.. Richting :.. Opmerkingen vooraf : - werk verzorgd en duidelijk, zodat er geen dubbelzinnigheden
Nadere informatieDigitale technieken Deeltoets II
Digitale technieken Deeltoets II André Deutz 11 januari, 2008 De opgaven kunnen uiteraard in een willekeurige volgorde gemaakt worden geef heel duidelijk aan op welke opgave een antwoord gegegeven wordt.
Nadere informatieUitwerking Tentamen Operating Systems Maandag 15 juni 2015 P1 P2 P3 P4 P5 P1 P3 P5 P4 P2 P1 P3 P5 P3. Opgave 1
Uitwerking Tentamen Operating Systems Maandag 15 juni 2015 Belangrijk: de gegeven antwoorden vormen één mogelijke uitwerking van het tentamen. Echter zijn er bij vele vragen meerdere correcte antwoorden
Nadere informatieESA Week 4a: Unix. Vandaag: versiebeheer (RCS, CVS, SVN) Donderdag: Compilatiebeheer, SSH en nog het een en ander
ESA Week 4a: Unix Vandaag: versiebeheer (RCS, CVS, SVN) Donderdag: Compilatiebeheer, SSH en nog het een en ander 1/30 23 september 2004 Versiebeheer Een Version-Control System biedt ondersteuning bij de
Nadere informatieStudentnummer:... Opleiding:... a) Met welke term wordt het interface tussen software en hardware van een processor aangeduid?
Computerorganisatie (213110) Dinsdag 15 augustus 2000, 13.30 17.00 uur 7 bladzijden met 6 opgaven 3 bladzijden met documentatie Bij dit tentamen mag geen gebruik worden gemaakt van boeken, dictaten of
Nadere informatieslides2.pdf April 12,
Werking van CPU CSN CS2 CPU, I/O en Memory management Piet van Oostrum 12 april 2002 De ALU kan alleen eenvoudige operaties uitvoeren (bijv. twee getallen optellen, vermenigvuldigen of testen of iets >
Nadere informatieComputertechniek vorige examens
Computertechniek vorige examens Examen 2009 Groep 1 1. Geef de 2 manieren waarop de adressen van de I/O-module in de adresruimte geïntegreerd kunnen zijn. (memory-mapped en isolated dus) 2. Wat is post-indexering?
Nadere informatieHigh Performance Computing
High Performance Computing Kristian Rietveld (krietvel@liacs.nl, kamer 138) Groep Computer Systems - Embedded systems - Specifieke software mappen op specfieke hardware. - Hardware synthesis. - Real-time
Nadere informatieHyper-V vs ESX in het datacenter
Hyper-V vs ESX in het datacenter Gabrie van Zanten www.gabesvirtualworld.com GabesVirtualWorld.com Welke hypervisor voor het datacenter? Virtualisatie is volwassen geworden Virtualisatie in het datacenter
Nadere informatieHoofdstuk 7. Computerarchitectuur
Hoofdstuk 7 Computerarchitectuur 1 controlebus CPU MEMORY I/O databus adresbus Figuur 71 Schematische opbouw van een computersysteem 8 Figuur 72 Een busverbinding Buslijn Out E A In Out E B In Out E C
Nadere informatieFrom High-Level Language to language of the hardware
Overzichtscollege 1 Abstractieniveaus Een computersysteem bestaat uit een hiërarchie van lagen Elke laag heeft een goed gedefinieerde interface naar de bovenliggende en onderliggende lagen Essentieel bij
Nadere informatieProeftentamen in1211 Computersystemen I (Opm: de onderstreepte opgaven zijn geschikt voor de tussentoets)
TECHNISCHE UNIVERSITEIT DELFT Faculteit Informatietechnologie en Systemen Afdeling ISA Basiseenheid PGS Proeftentamen in1211 Computersystemen I (Opm: de onderstreepte opgaven zijn geschikt voor de tussentoets)
Nadere informatieVirtueel Geheugen en demand paging (1)
Virtueel Geheugen en demand paging (1) Programma's zijn vaak niet in hun geheel in het geheugen nodig, vanwege: zelden gebruikte onderdelen groter gedeclareerde arrays dan nodig als programma helemaal
Nadere informatieHoe werkt een computer precies?
Hoe werkt een computer precies? Met steun van stichting Edict Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam Overview Introductie SIM-PL Simulatietool voor werking computer
Nadere informatieExamen besturingssystemen
Examen besturingssystemen Vrijdag 3 februari 2006, 9u 12u Prof. Koen De Bosschere Richting: Naam: Belangrijk 1. Vergeet niet uw naam te vermelden. 2. Schrijf de antwoorden in de daarvoor voorziene ruimte.
Nadere informatieDealer instructie. SE serie 2008 versie 009
Dealer instructie SE serie 2008 versie 009 Inhoudsopgave 1 Dealer F.A.Q... 3 1.1 Dealer frequently Asking Questions... 3 1.2 Initalisatiecodes... 4 1.3 Grafisch bericht (=grafische commerciële boodschap)...
Nadere informatieTECHNISCHE UNIVERSITEIT EINDHOVEN ComputerSystemen Deeltentamen B (weken 6..9) vakcode 2M208 woensdag 19 Maart 2003, 9:00-10:30
TECHNISCHE UNIVERSITEIT EINDHOVEN ComputerSystemen Deeltentamen B (weken 6..9) vakcode 2M208 woensdag 19 Maart 2003, 9:00-10:30 Algemene opmerkingen (lees dit!): - Dit tentamen duurt ANDERHALF UUR! - Dit
Nadere informatieWaarmaken van Leibniz s droom
Waarmaken van Leibniz s droom Artificiële intelligentie Communicatie & internet Operating system Economie Computatietheorie & Software Efficiënt productieproces Hardware architectuur Electronica: relais
Nadere informatieCorrespondentie inzake overnemen of reproductie kunt u richten aan:
Vrijwel alle namen van software- en hardwareproducten die in deze cursus worden genoemd, zijn tegelijkertijd ook handelsmerken en dienen dienovereenkomstig te worden behandeld. Alle rechten voorbehouden.
Nadere informatieVoorkennis: C, basiskennis microprocessoren (bij voorkeur ARM7 processor)
Real Time Operating Systems (RTOS) Voorkennis: C, basiskennis microprocessoren (bij voorkeur ARM7 processor) Kennis nodig voor: Operating systems Niveau: inleidend Diplomavoorwaarde: bachelor, schakelprogramma
Nadere informatieAssembly en Assemblers. Processoren 5 januari 2015
Assembly en Assemblers Processoren 5 januari 2015 Doel van vandaag Ik heb al losse eindjes over assembly verteld en een voorbeeldprogramma doorlopen. vandaag: algemeen + systematisch overzicht Programmeertalen
Nadere informatieTECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica
TECHNISCHE UNIVERSITEIT EINDHOVEN Faculteit Wiskunde en Informatica Examen Operating Systemen (2R230) op vrijdag 26 augustus 2005, 14.00-17.00 uur. Het tentamen bestaat uit drie delen die apart worden
Nadere informatieComputerarchitectuur. H&P Appendix A: Instruction Set Principles
Computerarchitectuur H&P Appendix A: Instruction Set Principles Kristian Rietveld http://ca.liacs.nl/ Instruction Sets Een processor moet precies worden verteld wat deze moet doen. Dit staat opgeschreven
Nadere informatieComputerarchitectuur. H&P Appendix A: Instruction Set Principles
Computerarchitectuur H&P Appendix A: Instruction Set Principles Kristian Rietveld http://ca.liacs.nl/ Instruction Sets Een processor moet precies worden verteld wat deze moet doen. Dit staat opgeschreven
Nadere informatieTransaction management.
Transaction management joost.vennekens@kuleuven.be Transact ie Reeks bewerkingen die geheel vormen Mogelijk verschillende tegelijkertijd Transaction manager Voorwaarden: Atomic Consistent Isolated Durable
Nadere informatieHardware Beginners. Processoren. Door Theo De Paepe
Hardware Beginners Processoren Merken en types Intel AMD * Pentium * Pentium II * Pentium III * Pentium 4 * Celeron * K6 * K7 / Athlon (64 BIT) * Duron * Sempron Opbouw En nog: * FPU * Datalijnen * Adreslijnen
Nadere informatieUniversiteit Leiden Opleiding Informatica
Internal Report 2010 08 February 2011 Universiteit Leiden Opleiding Informatica Multithreading voor iedereen Jaron Viëtor BACHELOR THESIS Leiden Institute of Advanced Computer Science (LIACS) Leiden University
Nadere informatieSoftware Mobiliteit. UAMS - 6 maart 2001. Theo D'Hondt Lab voor Pogrammeerkunde Vrije Universiteit Brussel http://prog.vub.ac.
Software Mobiliteit Theo D'Hondt Lab voor Pogrammeerkunde Vrije Universiteit Brussel http://prog.vub.ac.be/~tjdhondt p. 1 Overzicht Stelling Objecttechnologie Distributie Mobiliteit Evolutie Besluit p.
Nadere informatieBegrippen van transactieverwerking
Gegevensbanken 2010 Begrippen van transactieverwerking Bettina Berendt www.cs.kuleuven.be/~berendt Begrippen van transactieverwerking: Motivatie & Samenvatting 2 Waar zijn we? Les Nr. wie wat 1 ED intro,
Nadere informatieWindows Xp professional op de werkstations en Windows 2000 op de Server
Windows Xp professional op de werkstations en Windows 2000 op de Server Uitleg over het implementeren van Microsoft Windows XP Professional op de werkstations en de bijbehorende management tools. Dit boekje
Nadere informatieCollege 13: Patterns (2)
Concurrency Gerard Tel / Jacco Bikker - november 2016 februari 2017 College 13: Patterns (2) Welkom! genda: Collective Operations Reduce Scan Stencil Recurrence Concurrency college 13 Patterns (2) 3 Collectives
Nadere informatieSoftware Reverse Engineering. Jacco Krijnen
Software Reverse Engineering Jacco Krijnen Opbouw Inleiding en definitie Techniek Assemblers/Disassemblers Compilers/Decompilers Toepassingen Security Overige Softwarebeveiliging Piracy Anti RE technieken
Nadere informatieComputerarchitectuur. H&P Ch 2. Memory Hierarchy Design
Computerarchitectuur H&P Ch 2. Memory Hierarchy Design Kristian Rietveld http://ca.liacs.nl/ Motivatie Hoe dichter bij de CPU, hoe sneller het geheugen. - Maar ook: kleiner en duurder. Programmeurs willen
Nadere informatieBeter, Sneller, Mooier. Processoren 27 maart 2012
Beter, Sneller, Mooier Processoren 27 maart 2012 Beter! Sneller! Krach:gere CPU: microcode Snellere CPU: pipeline, out- of- order execu:on Sneller RAM: cache meer mogelijkheden... Welke extra s kan processor-
Nadere informatieDatastructuren Uitwerking jan
Datastructuren Uitwerking jan 2015 1 1a. Een abstracte datastructuur is een beschrijving van een datastructuur, met de specificatie van wat er opgeslagen wordt (de data en hun structuur) en welke operaties
Nadere informatieInhoudsopgave. Optimalisatie van de mmips. Forwarding optie 1. Design flow. implementation
2 Inhoudsopgave Optimalisatie van de mmips pc Sander Stuijk Veel gestelde vragen Hoe moet ik forwarding implementeren? Hoe moet ik clipping implementeren? Waarom is mijn simulatie zo traag? Hoe kan ik
Nadere informatieKlas : 5 Industriële ICT Herhalingsvragen reeks 1 PC-techniek
Klas : 5 Industriële ICT Herhalingsvragen reeks 1 PC-techniek VTI St.- Laurentius Neem eerst de tekst in het boek door, doe dit enkele keren en probeer uiteraard te onthouden wat je leest. Los nadien de
Nadere informatieEerste Toets Concurrency 20 december 2018, , Educ-β.
Eerste Toets Concurrency 20 december 2018, 11.00 13.00, Educ-β. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag interpreteert
Nadere informatieGedistribueerd programmeren
Gedistribueerd programmeren Gedistribueerd programmeren Collegedictaat, september 2007 Gerard Tel Email: gerard@cs.uu.nl Instituut voor Informatica en Informatiekunde Universiteit Utrecht Opmaak: Gerard
Nadere informatieWorkshop Git. multiplayer notepad. Anthony Clays 21 november /30
1/30 Workshop Git multiplayer notepad Anthony Clays 21 november 2016 2/30 Inleiding De basis Eerste stappen Branches en samenwerken Geavanceerde features Inleiding /30 Wat is git? Auteur: Linus Torvalds
Nadere informatieComputerarchitectuur en Netwerken. Computerarchitectuur
Computerarchitectuur en Netwerken 1 Computerarchitectuur Lennart Herlaar 2 september 2015 Opbouw van het vak Eerst (6 keer) over de opbouw van computer en operating system Collegedictaat Systeemarchitectuur
Nadere informatieTentamen 17 augustus 2000 Opgaven Computerarchitectuur
Tentamen 17 augustus 2000 Opgaven - 1 - Computerarchitectuur Tentamen Computerarchitectuur (213005) 17 augustus 2000 2 bladzijden met 5 opgaven 3 antwoordbladen Het raadplegen van boeken, diktaten of aantekeningen
Nadere informatieEen.NET-besturingssysteemtoolkit. Discovering Cosmos. Sijmen J. Mulder
Een.NET-besturingssysteemtoolkit Discovering Cosmos Sijmen J. Mulder Agenda Boek 1 Cosmos: a very short introduction Boek 2 Modern Operating Systems Pauze Boek 3 The Design and Implementation of the Cosmos
Nadere informatie1=2720/2725 Operating System Concepten
TECHNISCHE UNIVERSITEIT DELFT Faculteit EWI, Afdeling SCT 1 1 1=2720/2725 Operating System Concepten ^ november 2013, 14.00-17.00 uur. docent: H.J. Sips Dit is een tentamen met 9 open vragen Opgave Punten
Nadere informatieHardware-software Co-design
Jan Genoe KHLim Versie: maandag 10 juli 2000 Pagina 1 Wat is HW/SW Co-design Traditioneel design: De verdeling tussen de HW en de SW gebeurt bij het begin en beiden worden onafhankelijk ontwikkeld Verweven
Nadere informatieDB architectuur. joost.vennekens@denayer.wenk.be
DB architectuur joost.vennekens@denayer.wenk.be DB - logisch perspectief - DB - fysisch perspectief - DBMS Fysische details van databank beheren Zodat gebruiker zich enkel om logische perspectief moet
Nadere informatieProeftentamen in1211 Computersystemen I (NB de onderstreepte opgaven zijn geschikt voor de tussentoets)
TECHNISCHE UNIVERSITEIT DELFT Faculteit Informatietechnologie en Systemen Afdeling ISA Basiseenheid PGS Proeftentamen in1211 Computersystemen I (NB de onderstreepte opgaven zijn geschikt voor de tussentoets)
Nadere informatieLCD MONITOR SHARP INFORMATION DISPLAY GEBRUIKSAANWIJZING
LCD MONITOR SHARP INFORMATION DISPLAY DOWNLOADER Versie 1.1 GEBRUIKSAANWIJZING Inleiding Deze software Kan controleren of er nieuwe versies zijn van de gebruikte software. Indien er een nieuwe versie is,
Nadere informatieCover Page. Author: Vu, Van Thieu Title: Opportunities for performance optimization of applications through code generation Issue Date:
Cover Page The handle http://hdl.handle.net/1887/18622 holds various files of this Leiden University dissertation. Author: Vu, Van Thieu Title: Opportunities for performance optimization of applications
Nadere informatieExamen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni, 2010
Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar 2009-2010 16 juni, 2010 **BELANGRIJK** 1. Schrijf je naam onderaan op elk blad. 2.
Nadere informatie