290 likes | 368 Views
Systeemprestaties. Systeemprestaties. Wat is bepalend voor de systeemprestaties? Hoe versnellen we het data transport? Hoe versnellen we de geheugen toegang? Hoe verbeteren we de CPU snelheid?. Von Neumann cyclus. Bus operation to memory. 1) Instruction Fetch. IF. Internal processing.
E N D
Systeemprestaties Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Systeemprestaties • Wat is bepalend voor de systeemprestaties? • Hoe versnellen we het data transport? • Hoe versnellen we de geheugen toegang? • Hoe verbeteren we de CPU snelheid? Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Von Neumann cyclus Bus operation to memory 1) Instruction Fetch IF Internal processing 4) Execute and operand store EX/OS ID 2) Instruction Decode Internal registers or Bus operation to memory Internal registers or Bus operation to memory OF 3) Operand(s) Fetch Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Bus gebruik in de tijd IF ID OF EX OS t ? t ? t Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
IF Bus operatie • Adres (bus) • Geheugen selectie (glue) • Data beschikbaar (memory) • Data overdracht (bus) memory CPU Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Bus snelheid? medium • Zender • Rijs-tijd • Reistijd • Ontvanger 100 Mhz (10 nsec) ? Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Geheugens a0 am a0 an Dynamische RAM Statische RAM r/w RAS* CAS* r/w CS* EN* Cycle time = Access time Cycle time = Access time + pre-charge time Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Dynamische RAM Versnellen van data transport? Page mode Interleaving RAS* row a0 am Column data CAS* r/w Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Cache memory cache memory CPU Stay on chip! Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Cache types • Instructie cache • Data cache • Mixed or unified cache Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Associatief geheugen adres data comparator Data uit Hit ? n x adres data comparator Extern adres Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
fully associative cache • iedere geheugencel heeft comparators voor het volledige adres • veel hardware • veel stroom Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Direct mapping cache Veel minder hardware: een direct mapped cache heeft maar 1 comparator! Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Set-associatieve cache Het compromis: een set-associative cache Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Een compromis tussen performance en prijs in de praktijk is een cache meestal 2 .. 16-way set-associatief Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Cache inhoud (hit) Wat bewaar je in een cache? dat wat je snel weer nodig hebt, je wil dus eigenlijk voorspellen... caching berust op lokaliteit of eigenlijk: wat gooi je weg? Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Cache mis wat lees je in bij een misser? • RAM geheugen is meestal sneller in sequential access • access is vaak sequentieel, dus ... Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Cached data write wat te doen bij schrijven? write-trough write-back let op bij multiprocessor systemen! Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Tijdaspect een probleem bij real-time systemen: • onvoorspelbaarheid • benchmarking is lastig Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
gnihcaC omgedraaide cache: virtueel geheugen! maak (schijnbaar) meer geheugen door (transparant) een lager deel van de hiërarchie te gebruiken ‘t is maar hoe je het ziet... Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Gefaseerde uitvoering van instructies (instruction) Fetch (instruction) Decode, Execute (result) Store Nadeel: op ieder moment is maar een deel (in dit geval ¼) van je hardware echt bezig! Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Pipelining Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
pipelining:overlappende uitvoering van instructies instructies worden 4 keer zo snel uitgevoerd doordat op ieder moment alle delen van de hardware bezig zijn (ieder met een verschillende instructie) Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Pipelining problem IF ID OF EX OS IF ID OF EX IF ID OF IF ID IF Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
CISC <-> RISCcomplex instruction set computerreduced instruction set computer • De instructies verrichten simpele taken • Alle instructies zijn even groot • Er is geen uitgebreide keuze aan adresseer-modes • Er zijn veel interne registers beschikbaar • Load and Store architecture Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
ARM73-stage pipeline Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Superscalair Int unit cache Int unit Instruction queue FP unit Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Multiprocessor systemen(classificatie van Flynn) • SISDsingle instruction single data • SIMDsingle instruction multiple data • MISDmultiple instruction single data • MIMDmultiple instruction multiple data Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology
Opdracht: • Onderzoek versnellingstechnieken toegpast bij de Pentium 4 processor • Werking en type cache(s) • Samenhang met het toegepaste geheugen Bestudeer: hoofdstuk 9 Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology