Download Introduction to Computer Architecture - Study Guide | EEL 5764 and more Exams Computer Architecture and Organization in PDF only on Docsity! Midterm 2 Study Guide NOTE: This guide is likely to change this weekend as I write the midterm. Check back Monday for a new updated copy. Appendix C • The 36 terms on page C-2 • What are the 3 C’s in cache misses? • The 4 memory hierarchy questions on page C-6 • Calculate average memory access time as in the example on page C-15 and C-16, C-26, C-31, 295, • 6 Basic cache optimizations – what are they and how do they improve cache performance? Do they always improve performance or does it depend on the benchmark? • larger block size to reduce miss rate • Larger caches to reduce miss rate • Higher associativity to reduce miss rate • Multilevel caches to reduce miss rate • Giving priority to read misses over writes to reduce miss penalty • Avoiding address translation during indexing of the cache to reduce hit time • Virtual memory • What is it? • What is its purpose? • How does it help a program? How does it hurt a program? • What does it mean to have a cache that is virtually indexed virtually tagged or virtually indexed physically tagged? What are the advantages and/or disadvantages of either way • What are page tables and what do they mean for virtual memory? • How can you speed up address translation? Chapter 5 • 11 advanced cache optimizations – what are they and how do they improve cache performance? Do they always improve performance or does it depend on the benchmark? • Small and simple caches to reduce hit time • Way prediction to reduce hit time • Trace caches to reduce hit time • Pipelined cache access to increase cache bandwidth • Nonblocking caches to increase cache bandwidth • Multibanked caches to increase cache bandwidth • Critical word first and early restart to reduce miss penalty • Merging write buffer to reduce miss penalty • Compiler optimizations to reduce miss rate Code and data rearrangement Loop interchange Blocking • Hardware prefetching of instructions and data to reduce miss penalty or miss rate • Compiler controlled prefetching to reduce miss penalty or miss rate • The table on page 309 summarizes all of the optimization techniques and tells you which aspect it effects • Memory technology and optimizations • How are SRAMs and DRAMs layed out? How do they work? How are they different? What are the advantages and disadvantages to one over the other? • Describe how DRAMS are accessed i.e. address is passed in 2 pieces • How can locality be used to improve the performance of DRAMS? • What is DDR SDRAM? • Protection: Virtual memory and virtual machines • How does virtual memory provide protect? What protections are provided? • What architectural support is needed for virtual memory? • Why have virtual machines become popular recently? • What types of protection does a virtual machine offer? • What is a virtual machine? • When running a virtual machine, describe how the system is laid out in terms of VM, VMM and Host os? • What is a s systems virtual machine? • What is the virtual machine monitor? What is it responsible for? What are its requirements? • How do virtual machines assist in managing both software and hardware? • What is virtualization? • How does lack of support in the ISS affect virtualization overhead? • Discuss how different running modes are important for the VM and VMM • Why can a VM not execute privileged instructions? What are privileged instructions and how are the handled when a VM tries to execute them • Why is I/O so difficult in VMs? How does a VM access physical devices on a machine? • Discuss the issues with virtual memory and virtual machines. What is the added overhead? How can that overhead be minimized? Chapter 6 • Why has the topic of storage become so popular recently? • Areal density • Concept of difference in whole disk read time for random access vs sequential access • RAID o What is the concept of RAID? Why is it important? Why is it useful? o Give any possible advantages/disadvantages to using RAID X. If I were to ask you this question, I would say what RAID X does to remind you o Know the differences between the following RAID models. The table on page 363 might be helpful RAID 1 - mirrored RAID 4 – parity-based with one parity disk RAID 5 – parity-based with the parity spread across all disks RAID 6 – row and diagonal parity o How can RAID 6 recover from multiple disk failures? Work through a recovery problem like in the slides • Errors, faults and failures o Define error, fault and failure and how do those differ? o Given an example situation, determine if it is an error, fault or failure o What is a latent error? o Four fault categories and what they are Hardware faults Design faults Operation faults Environmental faults o Three types of faults Transient faults Intermittent faults Permanent faults o Why are operator faults so hard to quantify? • I/O performance, reliability measures and benchmarks o Know the basic producer consumer model from page 372 o Measures of I/O performance: How many devices can you connect Which I/O devices can you connect Response time Throughput Interference of I/O with processor execution o Difference between throughput and response time o Transaction time is made up of Entry time System response time Think time o Transaction processing benchmarks Mostly concerned with I/O rate over data rate TPC benchmark characteristics on page 375 Why must the data set scale in size with the throughput? Figure 6.14 – Know the differences in these reconstruction policies. • Queuing Theory o Give a basic definition of queuing theory. What is it useful for? What does it tell us? What types of systems does it measure? Etc o What is a system that is in equilibrium?