Page 1Parallel ArchitectureFundamentalsCS 740October 21, 2002Topics• What is Parallel Architecture?• Why Parallel Architecture?• Evolution and Convergence of Parallel Architectures• Fundamental Design IssuesCS 740 F’02–2–What is Parallel Architecture?A parallel computer is a collection of processing elements that cooperate to solve large problems fastSome broad issues:• Resource Allocation:– how large a collection? – how powerful are the elements?– how much memory?• Data access, Communication and Synchronization– how do the elements cooperate and communicate?– how are data transmitted between processors?– what are the abstractions and primitives for cooperation?• Performance and Scalability– how does it all translate into performance?– how does it scale?Page 2CS 740 F’02–3–Why Study Parallel Architecture?Role of a computer architect:• To design and engineer the various levels of a computer system to maximize performanceand programmabilitywithin limits of technologyand cost.Parallelism:• Provides alternative to faster clock for performance• Applies at all levels of system design• Is a fascinating perspective from which to view architecture• Is increasingly central in information processingCS 740 F’02–4–Why Study it Today?History: diverse and innovative organizational structures, often tied to novel programming modelsRapidly maturing under strong technological constraints• The “killer micro” is ubiquitous• Laptops and supercomputers are fundamentally similar!• Technological trends cause diverse approaches to convergeTechnological trends make parallel computing inevitable• In the mainstreamNeed to understand fundamental principles and design tradeoffs, not just taxonomies• Naming, Ordering, Replication, Communication performancePage 3CS 740 F’02–5–Conventional Processors No Longer ScalePerformance by 50% each year 1e+01e+11e+21e+31e+41e+51e+61e+71980 1990 2000 2010 2020Perf (ps/Inst)52%/year19%/yearps/gate 19%Gates/clock 9%Clocks/inst 18%Bill DallyCS 740 F’02–6–Future potential of novel architectureis large (1000 vs 30)1e-41e-31e-21e-11e+01e+11e+21e+31e+41e+51e+61e+71980 1990 2000 2010 2020Perf (ps/Inst)Delay/CPUs52%/year74%/year19%/year30:11,000:130,000:1Bill DallyPage 4CS 740 F’02–7–Inevitability of Parallel ComputingApplication demands: Our insatiable need for cycles•Scientific computing: CFD, Biology, Chemistry, Physics, ...•General-purpose computing: Video, Graphics, CAD, Databases, TP...Technology Trends• Number of transistors on chip growing rapidly• Clock rates expected to go up only slowlyArchitecture Trends• Instruction-level parallelism valuable but limited• Coarser-level parallelism, as in MPs, the most viable approachEconomicsCurrent trends:• Today’s microprocessors have multiprocessor support• Servers & even PCs becoming MP: Sun, SGI, COMPAQ, Dell,...• Tomorrow’s microprocessors are multiprocessorsCS 740 F’02–8–Application TrendsDemand for cycles fuels advances in hardware, and vice-versa• Cycle drives exponential increase in microprocessor performance• Drives parallel architecture harder: most demanding applicationsRange of performance demands• Need range of system performance with progressively increasing cost• Platform pyramidGoal of applications in using parallel machines: SpeedupSpeedup (p processors) =For a fixed problem size (input data set), performance = 1/timeSpeedup fixed problem(p processors) =Performance (p processors)Performance (1 processor)Time (1 processor)Time (p processors)Page 5CS 740 F’02–9–Scientific Computing DemandCS 740 F’02–10–Engineering Computing DemandLarge parallel machines a mainstay in many industries• Petroleum (reservoir analysis)• Automotive (crash simulation, drag analysis, combustion efficiency), • Aeronautics (airflow analysis, engine efficiency, structural mechanics, electromagnetism), • Computer-aided design• Pharmaceuticals (molecular modeling)• Visualization– in all of the above– entertainment (films like Toy Story)– architecture (walk-throughs and rendering)• Financial modeling (yield and derivative analysis)• etc.Page 6CS 740 F’02–11–Learning Curve for Parallel Programs• AMBER molecular dynamics simulation program• Starting point was vector code for Cray-1• 145 MFLOP on Cray90, 406 for final version on 128-processor Paragon, 891 on 128-processor Cray T3DCS 740 F’02–12–Commercial ComputingAlso relies on parallelism for high end• Scale not so large, but use much more wide-spread• Computational power determines scale of business that can be handledDatabases, online-transaction processing, decision support, data mining, data warehousing ...TPC benchmarks (TPC-C order entry, TPC-D decision support)• Explicit scaling criteria provided• Size of enterprise scales with size of system• Problem size no longer fixed as pincreases, so throughput is used as a performance measure (transactions per minute or tpm)Page 7CS 740 F’02–13–TPC-C Results for March 1996• Parallelism is pervasive• Small to moderate scale parallelism very important• Difficult to obtain snapshot to compare across vendor platformsThroughput (tpmC)Number of processors05,00010,00015,00020,00025,0000 20406080100120Tandem HimalayaDEC AlphaSGI PowerChallenge HP PAIBM PowerPCOtherCS 740 F’02–14–Summary of Application TrendsTransition to parallel computing has occurred for scientific and engineering computingIn rapid progress in commercial computing• Database and transactions as well as financial• Usually smaller-scale, but large-scale systems also usedDesktop also uses multithreaded programs, which are a lot like parallel programsDemand for improving throughput on sequential workloads• Greatest use of small-scale multiprocessorsSolid application demand exists and will increasePage 8CS 740 F’02–15–Technology TrendsCommodity microprocessors have caught up with supercomputers.Performance0.11101001965 1970 1975 1980 1985 1990 1995SupercomputersMinicomputersMainframesMicroprocessorsCS 740 F’02–16–Architectural TrendsArchitecture translates technology’s gifts to performanceand capabilityResolves the tradeoff between parallelism and
View Full Document