Survey
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
Computer Engineering of Wave Machines for Seismic Modeling and Seismic Migration R. Phillip Bording February 15, 2004 Husky Energy Chair in Oil and Gas Research Memorial University of Newfoundland 0 Max Address M U N - February 15, 2005 - Phil Bording 1 Session 1 History of Design Tyco Brahe Napier Charles Babbage – mechanical design John Atanasoff – Storage – spinning capacitor - Konrad Zuse - Floating Point Mauchley and Ekert von-Neumann Harvard memory – code memory - data Princeton memory code and data Session 2 Current Design Issues Scaling laws Moore’s Law Transistors – VLSI Memory – Technology Division of Design The memory Challenge The processor Challenge The ILLIAC – PEPE IBM 7094 IBM 360/44 IBM 360/95 Array Processors the software of array processor calls Application Specific Machines M U N - February 15, 2005 - Phil Bording 4 M U N - February 15, 2005 - Phil Bording 5 M U N - February 15, 2005 - Phil Bording 6 M U N - February 15, 2005 - Phil Bording 7 M U N - February 15, 2005 - Phil Bording 8 M U N - February 15, 2005 - Phil Bording 9 Computing and Calculating Engines M U N - February 15, 2005 - Phil Bording 10 Session 1 History Vector memory Pipeline Arithmetic – Array Processing Vector memory Benchmark Driven Dollars Fairhair Syndrome M U N - February 15, 2005 - Phil Bording 11 Processors Data Memory Alu Hardwired instructions Processor Bottleneck Memory Bottleneck Vacuum tubes Core Plated Wire Transistors LSI – 6 T Static VLSI - 2 T Dynamic M U N - February 15, 2005 - Phil Bording 12 Linear Address Space 0 Max Address Address Pointer Latency is the time to access the first word Bandwidth is the rate of accessing successive words M U N - February 15, 2005 - Phil Bording 13 von Neumann Architecture Princeton Address Pointer Arithmetic Logic Unit (ALU) Data/Instructions Memory Pc = Pc + 1 Program Counter Featuring Deterministic Execution M U N - February 15, 2005 - Phil Bording 14 After Gustfason 2004 Bednar, 2004 M U N - February 15, 2005 - Phil Bording 15 Bank memory design Duplicate memory system One design for subsystem Use a binary tree design to spread out addresses and data Fetch/Store many words at once Assume a sequential addressing pattern M U N - February 15, 2005 - Phil Bording 16 Bank memory design The wires created a big switch between modules The slower memory access time was better matched to the faster processor times Costly to build – significant effort in engineering M U N - February 15, 2005 - Phil Bording 17 M U N - February 15, 2005 - Phil Bording 18 M U N - February 15, 2005 - Phil Bording 19 M U N - February 15, 2005 - Phil Bording 20 Array memory design N rows NxN bits N columns M bits on Bus M U N - February 15, 2005 - Phil Bording 21 Array memory design Streaming data flow, nibbles, bytes, and words Sequential Access First word access time = add+latency+data Successive words = data Random Access Indirect Addressing Non-uniform Strides M U N - February 15, 2005 - Phil Bording 22 Benchmark Scalar operations Array operations Do loop domination of codes Vendors look seriously at instruction stream Then comes Linpack. LU decomposition If it does matrix multiply fast nothing else matters or does it??? M U N - February 15, 2005 - Phil Bording 23 Fairhair Syndrome New world class machine is designed at MIT, Stanford, or Caltech Venture Capital flows in Federal Government buys 10 new machines Company goes public Vulture capitalists sell out Federal Government buys new machines from someboldy else -- the next fairhair Company has stock scandal – goes bankrupt M U N - February 15, 2005 - Phil Bording 24 Session 2 Current Design Issues Scaling laws Moore’s Law Transistors – VLSI Memory – Technology Division of Design The memory Challenge The processor Challenge The ILLIAC – PEPE IBM 7094 IBM 360/44 IBM 360/95 Array Processors the software of array processor calls