Advanced Computer Architecture - Lecture 45: Putting it all together. This lecture will cover the following: introduction and quantitative principles; instruction set architecture; computer hardware design; instruction level parallelism – dynamic; instruction level parallelism – static; memory hierarchy system;...
CS 704 Advanced Computer Architecture Lecture 45 Putting It All Together (Review: Lecture - 43) Prof Dr M Ashraf Chughtai Today’s Topics Module 1: Introduction Module 2: Instruction Set Architecture Module 3: Computer hardware design Module 4: Instruction Level Parallelism –Dynamic Module 5: Instruction Level Parallelism – Static Module 6: Memory Hierarchy system Module 7: Multiprocessing Module 8: I/O Systems Module 9: Networks and Clusters MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) Module 1: Introduction and Quantitative Principles We started this course distinguishing the computer organization and computer architecture Architecture refers to those attributes of a computer visible to the programmer or compiler writer; e.g., instruction set, memory addressing techniques, I/O mechanisms etc MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) Module 1: Introduction Organization refers to how the features of a computer are implemented; e.g., control signals are generated using the principles of FSM or microprogramming The architecture of the members of a processor family are same whereas organization of same architecture may differ between different members of the family MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) Module 1: Introduction … Computer Development We also introduced the computers developments with academic and commercial perspectives Academically, modern computer developments have their infancy in 1944-49, when John von Neumann introduced the concept of stored-program computer, referred to as Electronic Discrete Variable Automatic Computer – EDVAC MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) Module 1: Introduction … Computer Development Commercially, the first machine was built by Eckert-Mauchly Computer Corporation in 1949 In 1971, Intel introduced first cheep microprocessor 4004 and then 80 x 86 series In 1998, more than 350 million microprocessors with different instruction set architectures were in use; this number has risen to more than a billion in 2006 MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) Module 1: Introduction … Computer Generations Technological developments, from vacuum tubes to VLSI circuits, dynamic memory and network technology gave birth to four different generations of computers This course has viewed the Computer Architecture from four perspectives Processor Design Memory Hierarchy Input/output and storages Multiprocessor and Network interconnection MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) Module 1: Quantitative Principles The key to the quantitative analysis in determining the effectiveness of the entire computing system is the computer hardware and software performance In this respect , we discussed: Price-performance design CPU performance metrics CPU benchmark suites MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) Module 1: Price-Performance Design The issue of cost-performance is complex one At one extreme, high-performance computers designer may not give importance to the cost in achieving the performance goal At the other end, low-cost designer may sacrifice performance to some extent The price-performance design lies between these extremes where the designer balances cost and hence price verses performance MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) Module1: CPU Benchmark Suites In order to compare the performance of two machines, a user can simply compare the execution time of the same workload running on both the machines In practice users want to know, without running their own programs, that how well the machine will perform on their workload This is accomplished by evaluating the machine using a set of benchmarks – the programs specifically chosen to measure the performance MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 10 Module 7: Multiprocessing In this series of four lectures on multiprocessors we have studied, how improvement in computer performance can be accomplished using Parallel Processing Architectures? Parallel Architecture is a collection of processing elements that cooperate and communicate to solve larger problems fast Then we described the four categories of Parallel Architecture as: SISD, SIMD, MISD and MIMD architecture MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 44 Module 7: Multiprocessing We noticed that based on the memory organization and interconnect strategy, the MIMD machines are classified as: – Centralized Shared Memory Architecture – Distributed Memory Architecture We also introduced the framework to describe parallel architecture as a two layer representation: Programming and Communication models MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 45 Module 7: Multiprocessing We talked about sharing of caches for multiprocessing in the symmetric shared-memory architecture in details Here, we studied the cache coherence problem and introduced two methods, write invalidation and write broadcasting schemes, to resolve the problem We also discussed the finite state machine for the implementation of snooping algorithm MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 46 Module 8: I/O Systems The overall performance of a computer is measured by its throughput, which is very much influenced by the systems external to the processor The effect of neglecting the I/Os on the overall performance of a computer system can best be visualized by Amdahl's Law which identifies that: system speed-up limited by the slowest part! MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 47 Module 8: I/O Systems Then we discussed the trends in I/O interconnects as: the networks, channels and backplanes The networks offer message-based narrowpathway for distributed processors over long distance The backplanes offer memory-mapped wide pathway for centralized processing over short distance The interconnects are implemented via buses MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 48 Module 8: I/O Systems The buses are classified in two major categories as the I/O bus and CPU-Memory bus The channels are implemented using I/O buses and backplanes using CPU-Memory buses We discussed the bus transition protocols which specify the sequence of events and timing requirements in transferring information as synchronous or asynchronous communication MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 49 Module 8: I/O Systems We also studied bus arbitration protocols ― the protocols to reserve the bus by a device that wishes to communicates when multiple devices need the bus access Here, we noticed that the bus arbitration schemes usually try to balance two factors: Bus-priority: the device with highest priority should be serviced first Fairness: every device that want to use the bus is guaranteed to get the bus eventually MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 50 Module 8: I/O Systems The three bus arbitration schemes are: Daisy Chain Arbitration Centralized Parallel Arbitration Distributed Arbitration MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 51 Module 8: I/O Systems Having discussed the basic types of storage devices and the ways to interconnect them to the CPU, we studied the ways to evaluate the performance of storage I/O systems Here, we noticed that the reliability of a system can be improved by using the following four methods MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 52 Module 8: I/O Systems Fault Avoidance – prevent fault occurrence by construction Fault Tolerance – providing service complying with the service specification by redundancy Error Removal – minimizing the presence of errors by verification Error Forecasting – to estimate the presence, creation and consequence of errors by evaluation MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 53 Module 9: Networks and Clusters In this module we studied that: The formation of a generic interconnection network that comprises – – – – Computer nodes (host or end system) H/W and S/W interface Links to the interconnection network and Communication subnet The interconnections are designated as: – Local Area Network-LAN – Wide Area Network-WAN – System (or Storage) Area Network-SAN MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 54 Module 9: Networks and Clusters While talking about the interconnect model, software and protocols we studied that: – The interconnect communication model shows that two machines are connected via two unidirectional wires with a FIFO (queue) at the end to hold the data – The communication software separates the header and trailer from the message and identifies the request, reply, their acknowledgments and error checking codes – The communication protocols suggest the sequence of steps to reliable communication MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 55 Module 9: Networks and Clusters We classified the distributed switch interconnects as the fully and partially connected, symmetric and asymmetric interconnects Then we discussed the linear array, ring, 2D mesh/torus and hypercube topologies and their performance measures MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 56 Module 9: Networks and Clusters We also discussed Internetworking, i.e., the connection of two or more interconnection networks to communicate reliably and efficiently Internetworking relies on the communication standards composed of hierarchy of layers The internet communication Protocol Families facilitates applications to work with any interconnection MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 57 Thanks and Allah Hafiz MAC/VU-Advanced Computer Architecture Lecture 45 Putting It All together(2) 58 ... Performance without Enhancement MAC/VU -Advanced Computer Architecture Lecture 45 Putting It All together( 2) 13 Module 2: Instruction Set Architecture The three pillars of computer architecture are:... Uni-bus, 2-bus and 3-bus structures 3-bus based single cycles data path MAC/VU -Advanced Computer Architecture Lecture 45 Putting It All together( 2) 19 Sub-systems of Central Processing Unit At... dependences - Hazard stalls Dynamic Branch Control Prediction Speculation Data and - Control Hazard MAC/VU -Advanced Computer Architecture Computer Architecture Lecture 45 Putting It All together( 2)