11/14/05ELEC6200-001 Fall 20051 Multi-processor SoCs Yijing Chen.

Slides:



Advertisements
Similar presentations
© 2009 Fakultas Teknologi Informasi Universitas Budi Luhur Jl. Ciledug Raya Petukangan Utara Jakarta Selatan Website:
Advertisements

CSE431 Chapter 7A.1Irwin, PSU, 2008 CSE 431 Computer Architecture Fall 2008 Chapter 7A: Intro to Multiprocessor Systems Mary Jane Irwin (
Distributed Systems CS
Multiprocessors— Large vs. Small Scale Multiprocessors— Large vs. Small Scale.
Cache Coherent Distributed Shared Memory. Motivations Small processor count –SMP machines –Single shared memory with multiple processors interconnected.
Computer Architecture Introduction to MIMD architectures Ola Flygt Växjö University
CSCI 8150 Advanced Computer Architecture Hwang, Chapter 1 Parallel Computer Models 1.2 Multiprocessors and Multicomputers.
Introduction to MIMD architectures
Multiprocessors ELEC 6200: Computer Architecture and Design Instructor : Agrawal Name: Nam.
1 Multiprocessors. 2 Idea: create powerful computers by connecting many smaller ones good news: works for timesharing (better than supercomputer) bad.
Trevor Burton6/19/2015 Multiprocessors for DSP SYSC5603 Digital Signal Processing Microprocessors, Software and Applications.
Multiprocessors ELEC 6200 Computer Architecture and Design Instructor: Dr. Agrawal Yu-Chun Chen 10/27/06.
1 Lecture 1: Parallel Architecture Intro Course organization:  ~5 lectures based on Culler-Singh textbook  ~5 lectures based on Larus-Rajwar textbook.
An Introduction to Parallel Computing Dr. David Cronk Innovative Computing Lab University of Tennessee Distribution A: Approved for public release; distribution.
Chapter 17 Parallel Processing.
11/11/05ELEC CISC (Complex Instruction Set Computer) Veeraraghavan Ramamurthy ELEC 6200 Computer Architecture and Design Fall 2005.
1  2004 Morgan Kaufmann Publishers Chapter 9 Multiprocessors.
 Parallel Computer Architecture Taylor Hearn, Fabrice Bokanya, Beenish Zafar, Mathew Simon, Tong Chen.
CPE 731 Advanced Computer Architecture Multiprocessor Introduction
1 Computer Science, University of Warwick Architecture Classifications A taxonomy of parallel architectures: in 1972, Flynn categorised HPC architectures.
Lecture 37: Chapter 7: Multiprocessors Today’s topic –Introduction to multiprocessors –Parallelism in software –Memory organization –Cache coherence 1.
Single-Chip Multi-Processors (CMP) PRADEEP DANDAMUDI 1 ELEC , Fall 08.
Introduction to Symmetric Multiprocessors Süha TUNA Bilişim Enstitüsü UHeM Yaz Çalıştayı
Computer System Architectures Computer System Software
1 Lecture 20: Parallel and Distributed Systems n Classification of parallel/distributed architectures n SMPs n Distributed systems n Clusters.
1b.1 Types of Parallel Computers Two principal approaches: Shared memory multiprocessor Distributed memory multicomputer ITCS 4/5145 Parallel Programming,
Multi-Core Architectures
Feb. 19, 2008 Multicore Processor Technology and Managing Contention for Shared Resource Cong Zhao Yixing Li.
August 15, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 12: Multiprocessors: Non-Uniform Memory Access * Jeremy R. Johnson.
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi
CSIE30300 Computer Architecture Unit 15: Multiprocessors Hsin-Chou Chi [Adapted from material by and
SJSU SPRING 2011 PARALLEL COMPUTING Parallel Computing CS 147: Computer Architecture Instructor: Professor Sin-Min Lee Spring 2011 By: Alice Cotti.
ECE200 – Computer Organization Chapter 9 – Multiprocessors.
1 Introduction CEG 4131 Computer Architecture III Miodrag Bolic.
Spring 2003CSE P5481 Issues in Multiprocessors Which programming model for interprocessor communication shared memory regular loads & stores message passing.
PARALLEL PROCESSOR- TAXONOMY. CH18 Parallel Processing {Multi-processor, Multi-computer} Multiple Processor Organizations Symmetric Multiprocessors Cache.
Axel Jantsch 1 Networks on Chip Axel Jantsch 1 Shashi Kumar 1, Juha-Pekka Soininen 2, Martti Forsell 2, Mikael Millberg 1, Johnny Öberg 1, Kari Tiensurjä.
Outline Why this subject? What is High Performance Computing?
(Superficial!) Review of Uniprocessor Architecture Parallel Architectures and Related concepts CS 433 Laxmikant Kale University of Illinois at Urbana-Champaign.
1 Lecture 1: Parallel Architecture Intro Course organization:  ~18 parallel architecture lectures (based on text)  ~10 (recent) paper presentations 
Computer Organization CS224 Fall 2012 Lesson 52. Introduction  Goal: connecting multiple computers to get higher performance l Multiprocessors l Scalability,
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 2.
Fundamentals of Programming Languages-II
Multiprocessor So far, we have spoken at length microprocessors. We will now study the multiprocessor, how they work, what are the specific problems that.
August 13, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 11: Multiprocessors: Uniform Memory Access * Jeremy R. Johnson Monday,
1 Lecture 17: Multiprocessors Topics: multiprocessor intro and taxonomy, symmetric shared-memory multiprocessors (Sections )
Distributed Computing Systems CSCI 6900/4900. Review Definition & characteristics of distributed systems Distributed system organization Design goals.
CDA-5155 Computer Architecture Principles Fall 2000 Multiprocessor Architectures.
Background Computer System Architectures Computer System Software.
Introduction Goal: connecting multiple computers to get higher performance – Multiprocessors – Scalability, availability, power efficiency Job-level (process-level)
Constructing a system with multiple computers or processors 1 ITCS 4/5145 Parallel Programming, UNC-Charlotte, B. Wilkinson. Jan 13, 2016.
Lecture 13 Parallel Processing. 2 What is Parallel Computing? Traditionally software has been written for serial computation. Parallel computing is the.
Heterogeneous Processing KYLE ADAMSKI. Overview What is heterogeneous processing? Why it is necessary Issues with heterogeneity CPU’s vs. GPU’s Heterogeneous.
INTRODUCTION TO HIGH PERFORMANCE COMPUTING AND TERMINOLOGY.
Group Members Hamza Zahid (131391) Fahad Nadeem khan Abdual Hannan AIR UNIVERSITY MULTAN CAMPUS.
CHAPTER SEVEN PARALLEL PROCESSING © Prepared By: Razif Razali.
Distributed Shared Memory
Multi-Processing in High Performance Computer Architecture:
What is Parallel and Distributed computing?
Chapter 17 Parallel Processing
Introduction to Multiprocessors
Constructing a system with multiple computers or processors
Constructing a system with multiple computers or processors
Constructing a system with multiple computers or processors
Distributed Systems CS
Chapter 4 Multiprocessors
Database System Architectures
Presentation transcript:

11/14/05ELEC Fall Multi-processor SoCs Yijing Chen

11/14/05ELEC Fall Why multiprocessor systems-on-chips Single processors may be sufficient for low- performance applications that are typical of early microcontrollers, but an increasing number of applications require multiprocessors to meet their performance goals. Multiprocessor systems-on-chips (MPSoC) are one of the key applications of VLSL technology today. MPSoC are increasingly used to build complex integrated system. A MPSoC is more than just a rack of processors shrunk down to a single chip.

11/14/05ELEC Fall Introduce Multiprocessor Definition: Multiprocessor is Parallel processors with a single shared address. Microprocessor is now the most cost-effective processor. Multiprocessors have the highest absolute performance-faster than the fastest uniprocessor.

11/14/05ELEC Fall Several conceptions Parallel processing program: a single program that runs on multiple processors simultaneously. Cluster: a set of computers connected over a local area network (LAN) that function as a single large multiprocessor. Shared memory: a memory for a parallel processor with a single address space, implying implicit communication with loads and stores.

11/14/05ELEC Fall Multiprocessosrs communication mode Signal address: offer the programmer a single memory address space that all processors share. Processors communicate through shared variables in memory, with all processors capable of accessing any memory location via loads and stores. Message passing: Communicating between multiple processors by explicitly sending and receiving information.

11/14/05ELEC Fall Two types single address access Uniform momory access multiprocessors (or symmetric multiprocessors): which takes the same time to access main memory no matter which processor requests it and no matter which word is requested. Nonuniform memory access multiprocessors: some memory accesses are faster than others depending on which processor asks for which word. For nonuniform memory access machines can scale to larger sizes and hence are potentially higher performance.

11/14/05ELEC Fall Two basic constructed organizations Processors connected by a single bus Processors connected by a network Options in communication style and physical connection for multiprocessors as the number of processors varies.

11/14/05ELEC Fall Multiprocessors connected by a single bus Typical size is between 2 and 32 processors Coche coherency: consistency in the value of data between the versions In the caches of several processors.

11/14/05ELEC Fall Multiprocessors connected by a network Note: compare with last one, the multiprocessor connection is no longer Between memory and the processor.

11/14/05ELEC Fall Multiprocessors Programming Why is it difficult to write multiprocessor programs that are fast, especially as the number of processors increases. Because of the programming difficulty, most parallel processing success stories are a result of software wizards developing a parallel subsystem that presents a sequential interface. you must get good performance and efficiency from the parallel program on a multiprocessor Why it is difficult to write parallel processing programs is that the programmer must know a good deal about the hardware.

11/14/05ELEC Fall System-on-chips designs constraints: Not simply high computation rates, but real-time performance that meets deadlines. Low power or energy consumption. Low cost.

11/14/05ELEC Fall Concept of MPSoC Multiprocessor system on chips (MPSoC) are not chip multiprocessors. Chip multiprocessors are components that take advantage of increased transistor densities to put more processors on a single chip, but they don ’ t try to leverage application needs MPSoC are custom architectures that balance the constraints of VLSI technology with an application ’ s needs.

11/14/05ELEC Fall Memory system of MPSoC Heterogeneous memory systems: some blocks of memory may be accessible by only one or a few processors. Heterogenous memory systems are harder to program because the programmer must keep in mind what processors can access what memory blocks Irregular memory structures are often necessary in MPSoCs. One reason that designers resort to specialized memory is to support real-time performance.

11/14/05ELEC Fall Challenges and Opportunities MPSoCs combine the difficulties of building complex hardware systems and complex software systems. Methodology is critical to MPSoC design. Methodologies that work offer many advantages. They decrease the time it takes to design a system; they also make it easier to predict how long the design will take and how many resources it will require. Methodology also codify techniques for improving performance and power consumption that developers can apply to many different designs. Methodology will necessarily be a moving target for the next decade.

11/14/05ELEC Fall Challenges and Opportunities MPSoC hardware architectures present challenges in all aspects of the multiprocessor: processing elements, memory, and interconnects. Configurable processors with customized instruction sets are one way to improve the characteristics of processing elements; hardware/ software codesign of accelerators is another technique.

11/14/05ELEC Fall Future work A critical question in MPSoC architectures is the balance between programmability and efficiency. It is more difficult to program multiprocessors than uniprocessors, and it is more difficult to program heterogeneous multiprocessors than homogeneous multiprocessors. Hardware/ software interface codesign.

11/14/05ELEC Fall Question?