Conclusions on CS3014 David Gregg Department of Computer Science

Slides:



Advertisements
Similar presentations
Multi-core systems System Architecture COMP25212 Daniel Goodman Advanced Processor Technologies Group.
Advertisements

Computer Systems Nat 4/5 Computing Science Types of Computer and Performance.
March 18, 2008SSE Meeting 1 Mary Hall Dept. of Computer Science and Information Sciences Institute Multicore Chips and Parallel Programming.
Parallel Programming Henri Bal Rob van Nieuwpoort Vrije Universiteit Amsterdam Faculty of Sciences.
CS 501: Software Engineering Fall 2000 Lecture 19 Performance of Computer Systems.
1 New Architectures Need New Languages A triumph of optimism over experience! Ian Watson 3 rd July 2009.
Development of Computer - Story of Steve. What is a computer A high intelligence machine A tool – make our life much convenient A very loyal servant Pretty.
Accelerating Machine Learning Applications on Graphics Processors Narayanan Sundaram and Bryan Catanzaro Presented by Narayanan Sundaram.
Parallel Programming Henri Bal Vrije Universiteit Amsterdam Faculty of Sciences.
GPU Programming with CUDA – Accelerated Architectures Mike Griffiths
1b.1 Types of Parallel Computers Two principal approaches: Shared memory multiprocessor Distributed memory multicomputer ITCS 4/5145 Parallel Programming,
Parallel and Distributed Systems Instructor: Xin Yuan Department of Computer Science Florida State University.
U.S. Department of Energy’s Office of Science High Performance Computing Challenges and Opportunities Dr. Daniel Hitchcock
Multi-core Programming Introduction Topics. Topics General Ideas Moore’s Law Amdahl's Law Processes and Threads Concurrency vs. Parallelism.
Sogang University Advanced Computing System Chap 1. Computer Architecture Hyuk-Jun Lee, PhD Dept. of Computer Science and Engineering Sogang University.
Parallel Processing - introduction  Traditionally, the computer has been viewed as a sequential machine. This view of the computer has never been entirely.
Multiprocessing. Going Multi-core Helps Energy Efficiency William Holt, HOT Chips 2005 Adapted from UC Berkeley "The Beauty and Joy of Computing"
Reminder Lab 0 Xilinx ISE tutorial Research Send me an if interested Looking for those interested in RC with skills in compilers/languages/synthesis,
Hyper Threading (HT) and  OPs (Micro-Operations) Department of Computer Science Southern Illinois University Edwardsville Summer, 2015 Dr. Hiroshi Fujinoki.
Parallel Processing Sharing the load. Inside a Processor Chip in Package Circuits Primarily Crystalline Silicon 1 mm – 25 mm on a side 100 million to.
CS162 Week 5 Kyle Dewey. Overview Announcements Reactive Imperative Programming Parallelism Software transactional memory.
M U N - February 17, Phil Bording1 Computer Engineering of Wave Machines for Seismic Modeling and Seismic Migration R. Phillip Bording February.
UNDER THE GUIDANCE DR. K. R. RAO SUBMITTED BY SHAHEER AHMED ID : Encoding H.264 by Thread Level Parallelism.
Processor Level Parallelism. Improving the Pipeline Pipelined processor – Ideal speedup = num stages – Branches / conflicts mean limited returns after.
1 Presenter: Min Yu,Lo 2015/12/21 Kumar, S.; Jantsch, A.; Soininen, J.-P.; Forsell, M.; Millberg, M.; Oberg, J.; Tiensyrja, K.; Hemani, A. VLSI, 2002.
Understanding Parallel Computers Parallel Processing EE 613.
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 3.
SYNAR Systems Networking and Architecture Group CMPT 886: Computer Architecture Primer Dr. Alexandra Fedorova School of Computing Science SFU.
Background Computer System Architectures Computer System Software.
Hardware Trends CSE451 Andrew Whitaker. Motivation Hardware moves quickly OS code tends to stick around for a while “System building” extends way beyond.
Hardware Trends CSE451 Andrew Whitaker. Motivation Hardware moves quickly OS code tends to stick around for a while “System building” extends way beyond.
Processor Level Parallelism 2. How We Got Here Developments in PC CPUs.
Introduction. News you can use Hardware –Multicore chips (2009: mostly 2 cores and 4 cores, but doubling) (cores=processors) –Servers (often.
Introduction to Computers - Hardware
David Gregg Department of Computer Science
CS203 – Advanced Computer Architecture
COMPUTER GRAPHICS CHAPTER 38 CS 482 – Fall 2017 GRAPHICS HARDWARE
Introduction Super-computing Tuesday
Distributed Processors
6. Structure of Computers
Chapter1 Fundamental of Computer Design
Parallel Processing - introduction
The University of Adelaide, School of Computer Science
Nat 4/5 Computing Science Types of Computer and Performance
Constructing a system with multiple computers or processors
Architecture & Organization 1
Introduction to Reconfigurable Computing
Nat 4/5 Computing Science Types of Computer and Performance
Introduction.
Introduction.
Architecture & Organization 1
Parallel Processing Sharing the load.
Constructing a system with multiple computers or processors
Constructing a system with multiple computers or processors
Alternative Processor Panel Results 2008
Constructing a system with multiple computers or processors
Chapter 1 Introduction.
1.1 The Characteristics of Contemporary Processors, Input, Output and Storage Devices Types of Processors.
Computer Evolution and Performance
Multithreading Why & How.
CS 286 Computer Organization and Architecture
Vrije Universiteit Amsterdam
Multicore and GPU Programming
The University of Adelaide, School of Computer Science
Lecture 20 Parallel Programming CSE /27/2019.
Types of Parallel Computers
Multicore and GPU Programming
Embedded System Development Lecture 12 4/4/2007
Husky Energy Chair in Oil and Gas Research
If you build it, will they buy it?
Presentation transcript:

Conclusions on CS3014 David Gregg Department of Computer Science University of Dublin, Trinity College

Interesting Times In the mid 2000’s power became the main limiter of processor performance No longer possible to keep scaling clock speed Performance must come from other sources After decades of rejecting parallel computing as too hard for most purposes the industry switched to multicore almost overnight in 2005

Moore’s Law Moore’s law is still alive and well At least for the moment Feature densities will continue to double around every 18-24 months More sophisticated, faster cores will still arrive But the rate of improvement of single core has been much, much slower than between 1984 and 2005 Also have lots of parallelism on chip

Parallel Architectures Many parallel architectures have been proposed over the years Instruction-level parallel Vector Multi-threaded Shared-memory multiprocessor Distributed memory multiprocessor GPU, FPGA, hardware accelerators, etc.

Parallel Architectures Existing types of architecture, which were mostly originally designed for supercomputing, will be implemented on single chips The same ideas that worked in 1970’s supercomputers will work in 21st century single chip, and stacked chip processors

Software The big problem of parallel computing has always been software “Any steps that are programmed by the operator, who sets up the machine, should be set up only in a serial fashion. It has been shown over and over again that any departure from this procedure results in a system that is much too complicated to use.” J. P. Eckert 1946

Software The big unknown with parallel computing is how we will build software at an acceptable cost Large diversity of proposed new programming models and languages OpenMP, Intel Array Building Blocks, X10, stream processing languages, etc. Also domain-specific languages E.g. Halide for image processing

Software Over time the successful languages and programming models will emerge The most influential languages are hardly ever the most widely used ones Historical examples such as Lisp, Algol 60, Simula 67, Occam This will probably leave a large legacy of Programs in languages that are forgotten Single-threaded COBOL code

This time it’s different There are some differences this time Industry sees no alternative to parallelism We must build parallel software if we want improved performance For all kinds of applications Even if we don’t want to

But how different? Moore’s law continues to provide a doubling of transistors every 24 months or so But the number of cores tends not to double Companies like Intel still make lots of processors with 4 cores Some with 18 cores, hardly any with more Predictions of doubling of cores every two years have not happened

But how different? The big difference has been the move to mobile, battery-powered computing Demand for low power computing Lower energy leads to real improvements in battery life It’s not clear that people upgrade their desktop machine very often If they have one

More differences Hardware trade-offs are also different Relative costs of communication, shared memory, etc. very different on a single chip compared to multiple chips Memory locality is really important And almost entirely application dependent Energy is often a key limit And influenced by memory locality 3D stacking will produce some surprises Embedded computing ever more important

Cheap Science Fiction Never forget wisdom of cheap sci fi: “All this has happened before; all this will happen again.” The same parallel architectures ideas appear again and again We have been failing to build parallel software for decades