24
COMP375 Computer Architecture and Organization Senior Review

COMP375 Computer Architecture and Organization

  • Upload
    wynona

  • View
    20

  • Download
    2

Embed Size (px)

DESCRIPTION

COMP375 Computer Architecture and Organization. Senior Review. Goals for COMP375. Apply knowledge of computing and mathematics to solve problems of design and performance analysis Understand how the architecture affects program performance - PowerPoint PPT Presentation

Citation preview

COMP375 Computer Architecture and Organization

COMP375Computer Architectureand OrganizationSenior Review

1IntroductionCOMP3751Goals for COMP375Apply knowledge of computing and mathematics to solve problems of design and performance analysis Understand how the architecture affects program performanceExplain the design decisions of RISC and advanced architecturesMake informed decisions in the selection of computersUnderstand the basics of computer hardware and how software interacts with computer hardware

IntroductionCOMP3752Intel PerformanceArchitectural Improvements

IntroductionCOMP3753So What?When you buy a computer, processor clock speed is not the sole determining factor of processing capability.Recently processor clock speeds have decreased while potential performance has continued to increase.

IntroductionCOMP3754Basic Computer ComponentsCPU

I/O ControllerI/O DeviceMemoryBusCache

IntroductionCOMP3755Instruction CycleFetch the instruction from the memory address in the Program Counter registerIncrement the Program CounterDecode the type of instructionFetch the operandsExecute the instructionStore the results

IntroductionCOMP3756Simple CPU

IntroductionCOMP3757Instruction Fetchbus IRIRadr busresult busALU resultALUfunbus oprndbus PCPC busbus R1R1 busbus R2R2 busbus MARbus MBRMBR busMemfuncXXreadwaitXX

IntroductionCOMP3758

Memory HierarchyCachingVirtual Memory

IntroductionCOMP3759Locality of ReferenceTemporal LocalityA memory location that is referenced is likely to be accessed again in the near future.Spatial LocalityMemory locations near the last access are likely to be accessed in the near future.

IntroductionCOMP37510So What?User programs do not directly control processor cache or virtual memory, but they have a big impact on their efficiency.Programs that access memory with similar addresses will run faster than programs that have unpredictable varying accesses.

IntroductionCOMP37511Address Translation

IntroductionCOMP37512Steps in Accessing MemoryCompute effective addressSplit effective address into page number and offsetUse page number as an index into the page table. (Check if too big.)If Resident bit is clear, generate a page fault.if Resident bit is set, get page address from the page table.

IntroductionCOMP37513Steps in Accessing MemoryConcatenate page address with offset to create the physical address.For direct L1 cache, get the middle bits of the physical address to determine which line to check.Check the tag value of the specified line to see if it matches the upper bits of the physical address.If there is a match, return the specified value from the cache.

IntroductionCOMP37514Steps in Accessing MemoryIf the tag field does not match, check the second level cache.For n-way set associative L2 cache, get the middle bits of the physical address to determine which set to search.Search the tag values of all n lines in the specified set to see if any match the upper bits of the physical address.If there is a match, return the specified value from the cache.

IntroductionCOMP37515Steps in Accessing MemoryIf none of the n tag fields for the set match the upper bits of the physical then determine which of the lines in the specified set of the L2 cache is the oldest. This line will hold the new data.If this line is dirty, write this block to RAM.Get the physical address data from RAM.Copy the block of data from RAM into the L1 and L2 caches. Send the CPU the data requested.

IntroductionCOMP37516So What?All programs think they start at address zero, but they dont.The OS can fit lots of big programs in tiny memory, although performance may suffer.An Execute Disable bit in the page table prevents many stack overflow exploits.

IntroductionCOMP37517Disk Performance ParametersDisk read or write involves three factorsSeek timetime it takes to position the head at the desired trackRotational delay or rotational latencytime its takes for the beginning of the sector to reach the headTransfer timetime required for the data to move under the head

IntroductionCOMP37518Performance ExampleHow long does it take to read two consecutive 512 byte blocks from the disk?Average Seek time8.9 msAverage Rotational Delay4.2 msTransfer timeTotal13.4 ms

IntroductionCOMP37519So What?The seek time is long compared a simple block transfer time.It is more efficient to read and write large blocks. One track or cylinder at a time is best.CDs are slow for small files even if you have a 1,000,000X CD drive

IntroductionCOMP37520RISC Processor FeaturesPipelinedSimple instructionsFew instructionsNo microcodeFew addressing modesLoad/Store architectureSliding register stackDelayed branchesFast

IntroductionCOMP37521Pipelining

PipeliningCOMP37522HazardsA hazard is a situation that reduces the processors ability to pipeline instructions.Resource When different instructions want to use the same CPU resource.Data When the data used in an instruction is modified by the previous instruction.Control When a jump is taken or anything changes the sequential flow.

PipeliningCOMP37523COMP375 Senior ExamThe senior exam questions are very similar to COMP375 exam questions.You will probably want to bring a calculator to the exam.

IntroductionCOMP37524Chart12.40.16.9501622931013.143907849818.911656009755.783481612363.8309703461205.7909624493228.2919333423299.4022695271332.66918836351533.35829987091612.67617462414565.64454117914777.9905121545783.83472198276111.72102154567589.34218714497931.7874753135

clk perftot perfarch acta+cMaximum MIPS

Chart22.40.16.9501622931013.143907849818.911656009755.783481612363.8309703461205.7909624493228.2919333423299.4022695271332.66918836351533.35829987091612.67617462414565.64454117914777.9905121545783.83472198276111.72102154567589.34218714497931.7874753135

clk perftot perfarch acta+c

Chart42.40.16.9501622931013.143907849818.911656009755.783481612363.8309703461205.7909624493228.2919333423299.4022695271332.66918836351533.35829987091612.67617462414565.64454117914777.9905121545783.83472198276111.72102154567589.34218714497931.7874753135

clk perftot perfarch acta+c

Chart70.012.41906645266.9501622933.04983770713.14390784985.767748159955.78348161238.0474887338205.790962449322.500970893299.402269527133.26691883631533.358299870979.31787475314565.6445411791212.34597097495783.8347219827327.88629956297589.3421871449342.4452881686

clk perftot perfarch actclk perf

data2yearMHzclk posarch posclk pixarch pixyearclk perftot perfarch actclk perfaxispixel198716614614616119872.42.40.02.406751989255985167715919893.010.07.03.019915055447212120319915.818.913.15.819936653138814428719938.063.855.88.01995200460300215375199522.5228.3205.822.51997300433274242401199733.3332.7299.433.31999733373165302510199979.31612.71533.479.320012000305903705852001212.34778.04565.6212.320023060275734006022002327.96111.75783.8327.92003272554036202003342.47931.87589.3342.4

Chart32.41906645262.43.0498377076.9501622935.767748159913.14390784988.047488733855.783481612322.500970893205.790962449333.2669188363299.402269527179.31787475311533.3582998709212.34597097494565.6445411791327.88629956295783.8347219827342.44528816867589.3421871449

Clocktot perfArchitecture

datayearMHzclk posarch posclk pixarch pixyearClocktot perfArchitecturea+caxispixel198716614614616119872.42.42.40.106751989255985167715919893.010.07.010.019915055447212120319915.818.913.118.919936653138814428719938.063.855.863.81995200460300215375199522.5228.3205.8228.31997300433274242401199733.3332.7299.4332.71999733373165302510199979.31612.71533.41612.720012000305903705852001212.34778.04565.64778.020023060275734006022002327.96111.75783.86111.72003272554036202003342.47931.87589.37931.8