ECSE 425 Lecture 1: Course Introduc5on Bre9 H. Meyer

Similar documents
ECSE 425 Lecture 25: Mul1- threading

ECE 588/688 Advanced Computer Architecture II

ECE 588/688 Advanced Computer Architecture II

ECE 587 Advanced Computer Architecture I

CS 61C: Great Ideas in Computer Architecture Direct- Mapped Caches. Increasing distance from processor, decreasing speed.

1DT157 Digitalteknik och datorarkitekt. Digital technology and computer architecture, 5p

EECS4201 Computer Architecture

Moore s Law. CS 6534: Tech Trends / Intro. Good Ol Days: Frequency Scaling. The Power Wall. Charles Reiss. 24 August 2016

CS 6534: Tech Trends / Intro

Lecture 1: Introduction

Processor Architecture

ECSE 425 Lecture 11: Loop Unrolling

COL 380: Introduc1on to Parallel & Distributed Programming. Lecture 1 Course Overview + Introduc1on to Concurrency. Subodh Sharma

1/12/11. ECE 1749H: Interconnec3on Networks for Parallel Computer Architectures. Introduc3on. Interconnec3on Networks Introduc3on

Fundamentals of Computer Design

Computer Architecture

The ILOC Virtual Machine (Lab 1 Background Material) Comp 412

Real Processors. Lecture for CPSC 5155 Edward Bosworth, Ph.D. Computer Science Department Columbus State University

CS 61C: Great Ideas in Computer Architecture (Machine Structures)

Spring 2016 :: CSE 502 Computer Architecture. Introduction. Nima Honarmand

Computer and Information Sciences College / Computer Science Department CS 207 D. Computer Architecture. Lecture 9: Multiprocessors

Instructors: Randy H. Katz David A. PaGerson hgp://inst.eecs.berkeley.edu/~cs61c/fa10. 10/4/10 Fall Lecture #16. Agenda

Instructors: Randy H. Katz David A. PaHerson hhp://inst.eecs.berkeley.edu/~cs61c/fa10. Fall Lecture #1. Agenda

Fundamentals of Computers Design

Administration. Coursework. Prerequisites. CS 378: Programming for Performance. 4 or 5 programming projects

ECE 1749H: Interconnec1on Networks for Parallel Computer Architectures. Introduc1on. Prof. Natalie Enright Jerger

Computer and Information Sciences College / Computer Science Department CS 207 D. Computer Architecture

Course web site: teaching/courses/car. Piazza discussion forum:

CS 352H Computer Systems Architecture Exam #1 - Prof. Keckler October 11, 2007

EE282 Computer Architecture. Lecture 1: What is Computer Architecture?

CS 61C: Great Ideas in Computer Architecture (Machine Structures) Lecture 32: Pipeline Parallelism 3

How What When Why CSC3501 FALL07 CSC3501 FALL07. Louisiana State University 1- Introduction - 1. Louisiana State University 1- Introduction - 2

Computer Architecture: Mul1ple Issue. Berk Sunar and Thomas Eisenbarth ECE 505

Administration. Prerequisites. Website. CSE 392/CS 378: High-performance Computing: Principles and Practice

Chapter 06: Instruction Pipelining and Parallel Processing

URL: Offered by: Should already know: Will learn: 01 1 EE 4720 Computer Architecture

New Advances in Micro-Processors and computer architectures

CS 465 Final Review. Fall 2017 Prof. Daniel Menasce


When and Where? Course Information. Expected Background ECE 486/586. Computer Architecture. Lecture # 1. Spring Portland State University

Lecture 9: More ILP. Today: limits of ILP, case studies, boosting ILP (Sections )

Agenda. Old School CS61c. Agenda. New School CS61c 8/26/10. CS 61C: Great Ideas in Computer Architecture (Machine Structures)

Computer Architecture. Fall Dongkun Shin, SKKU

Online Course Evaluation. What we will do in the last week?

CS64 Computer Organization

EECS 470. Lecture 18. Simultaneous Multithreading. Fall 2018 Jon Beaumont

Parallel Computer Architecture

Multithreaded Processors. Department of Electrical Engineering Stanford University

First, the need for parallel processing and the limitations of uniprocessors are introduced.

CS3350B Computer Architecture. Introduction

How much energy can you save with a multicore computer for web applications?

CSS 161 Fundamentals of Compu3ng. Introduc3on to Computers & Java September 26, Instructor: Uma Murthy CSS SKL 161 A Instructor: Joe McCarthy

CSE Opera*ng System Principles

Lec 25: Parallel Processors. Announcements

Computer Architecture

Computer Architecture!

COMP 322 / ELEC 323: Fundamentals of Parallel Programming

Computing architectures Part 2 TMA4280 Introduction to Supercomputing

CENG505 Advanced Computer Graphics Lecture 1 - Introduction. Instructor: M. Abdullah Bülbül

CS4230 Parallel Programming. Lecture 3: Introduction to Parallel Architectures 8/28/12. Homework 1: Parallel Programming Basics

TDT Coarse-Grained Multithreading. Review on ILP. Multi-threaded execution. Contents. Fine-Grained Multithreading

CMSC Computer Architecture Lecture 12: Multi-Core. Prof. Yanjing Li University of Chicago

The Processor: Instruction-Level Parallelism

Computer Architecture

Reduced Instruction Set Computer

Lecture 1: CS/ECE 3810 Introduction

URL: Offered by: Should already know: Will learn: 01 1 EE 4720 Computer Architecture

Hyperthreading Technology

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 1: Introduction

Computer Architecture!

IF1 --> IF2 ID1 ID2 EX1 EX2 ME1 ME2 WB. add $10, $2, $3 IF1 IF2 ID1 ID2 EX1 EX2 ME1 ME2 WB sub $4, $10, $6 IF1 IF2 ID1 ID2 --> EX1 EX2 ME1 ME2 WB

ILP Ends TLP Begins. ILP Limits via an Oracle

EE282H: Computer Architecture and Organization. EE282H: Computer Architecture and Organization -- Course Overview

Academic Course Description. EM2101 Computer Architecture

Computer Architecture A Quantitative Approach, Fifth Edition. Chapter 1. Copyright 2012, Elsevier Inc. All rights reserved. Computer Technology

CMSC 411 Computer Systems Architecture Lecture 13 Instruction Level Parallelism 6 (Limits to ILP & Threading)

10/19/17. You Are Here! Review: Direct-Mapped Cache. Typical Memory Hierarchy

Multiple Issue and Static Scheduling. Multiple Issue. MSc Informatics Eng. Beyond Instruction-Level Parallelism

Review: Performance Latency vs. Throughput. Time (seconds/program) is performance measure Instructions Clock cycles Seconds.

Microarchitecture Overview. Performance

Lecture 1: Course Introduction and Overview Prof. Randy H. Katz Computer Science 252 Spring 1996

Control Hazards. Prediction

Two hours - online. The exam will be taken on line. This paper version is made available as a backup

CS/EE 6810: Computer Architecture

Course II Parallel Computer Architecture. Week 2-3 by Dr. Putu Harry Gunawan

Last lecture. Some misc. stuff An older real processor Class review/overview.

Spring 2014 Midterm Exam Review

Outline EEL 5764 Graduate Computer Architecture. Chapter 3 Limits to ILP and Simultaneous Multithreading. Overcoming Limits - What do we need??

Written Exam / Tentamen

RAID 0 (non-redundant) RAID Types 4/25/2011

Instructors. ECE 152 Introduction to Computer Architecture. Undergrad Teaching Assistants. Course Website. Textbook.

CPS104 Computer Organization Lecture 1. CPS104: Computer Organization. Meat of the Course. Robert Wagner

CSC Operating Systems Fall Lecture - I Introduction. Tevfik Ko!ar. Louisiana State University. August 25 th, Contact Information

Computer Architecture and Engineering CS152 Quiz #3 March 22nd, 2012 Professor Krste Asanović

Instruction Level Parallelism

Computer Architecture Lecture 12: Out-of-Order Execution (Dynamic Instruction Scheduling)

Parallel Processing SIMD, Vector and GPU s cont.

CSE 141: Computer Architecture. Professor: Michael Taylor. UCSD Department of Computer Science & Engineering

Instruction Level Parallelism (ILP)

Lecture 21: Parallelism ILP to Multicores. Parallel Processing 101

Transcription:

ECSE 425 Lecture 1: Course Introduc5on 2011 Bre9 H. Meyer

Staff Instructor: Bre9 H. Meyer, Professor of ECE Email: bre9 dot meyer at mcgill.ca Phone: 514-398- 4210 Office: McConnell 525 OHs: M 14h00-15h00; R 11h00-12h00; or, by appointment Teaching Assistant: Alexandre Raymond Email: alexandre dot raymond at mail.mcgill.ca 2011 B. H. Meyer 2

What ECSE 425 is A course on the architecture of modern, high- performance computers What is computer architecture? The art and science of selec5ng and interconnec5ng hardware components to create a computer that sa5sfies applica5on requirements What we ll learn How to organize a processor for performance How other constraints (e.g., cost, power, etc.) influence computer design How to judge the resul5ng trade- offs quan%ta%vely 2011 B. H. Meyer 3

What ECSE 425 isn t [Credit: xkcd.com] 2011 B. H. Meyer 4

Why is Architecture Interes5ng? Comp. architecture is the heart of comp. engineering Bigger, stronger, faster! Semiconductor industry relies on constant improvement Architects must take growing resources and deliver! UltraSPARC T2, 64 threads, 342 mm2 Clever design and organiza5on Remarkable insights and algorithms [Source: Sun; IBM] ECSE 425, Fall 2011, Lecture 1 2011 B. H. Meyer Power7, 32 threads, 576 mm2 5

Why is Architecture Challenging? Constraints conspire to make con5nual improvement difficult Cost: can t just make chips bigger Power: can t just make chips do more in the same 5me Reliability: must ensure chips do things right The effects of new architectural features are complex Evalua5on is complex, too! A good idea isn t enough: Implementable? Used enough to change metrics? [Source: IBM; AnandTech] 2011 B. H. Meyer 6

In This Course Fundamentals of computer design Pipelining Instruc5on- level parallelism (ILP) Memory hierarchy Mul5processor architecture and thread- level parallelism (TLP) Material based on H&P, 4 th edi%on 2011 B. H. Meyer 7

Grading 6 homework assignments (10%) Pencil and paper, some programming 1 project (30%) Evaluate architectural effects using SimpleScalar Significant C/C++ programming 2 midterm exams (30%) In class, closed book, 1 page of notes allowed 1 final exam (30%) Closed book, 2 pages of notes allowed 2011 B. H. Meyer 8

Homework Distributed on the course website h9p://www.info425.ece.mcgill.ca Due at the beginning of class No credit for late work! Without prior permission, of course And 2011 B. H. Meyer 9

Project Simulate the effect of architectural changes to a superscalar, out- of- order processor Simula5on framework SimpleScalar Wri9en in C Evalua5on using real benchmarks Work in pairs; consider early who to work with! Proposal Implementa5on Evalua5on Presenta5on Report 2011 B. H. Meyer 10

Historical perspec5ves on processors Late 1970s: Birth of microprocessor Single- chip processor, programmable controllers The decade of 1980s: Instruc%on set architecture RISC (Reduced Instruc5on Set Computer) Instruc5on pipelining, cache memories, compliers Worksta5ons The decade of 1990s: Instruc%on level parallelism Superscalar, specula5ve micro- architectures Low- cost desktop (super)computers The decade of 2000s: Mul%- core era Mul5- core architectures, power constrained designs Mobile/portable compu5ng, large servers / data centers Source: Stanford EE382a course slides by Prof. Christos Kozyrakis 2011 B. H. Meyer 11

Fundamentals of Computer Design Three principles Make the common case fast (Amdahl s law) Exploit parallelism (at all levels) Exploit locality (caches / memory hierarchy) How should performance be measured? What other factors affect an architecture? Latency Cost Power Reliability 2011 B. H. Meyer 12

Pipelining Just like an assembly line Ideally: one instruc5on per clock cycle Reality: overheads; hazards, dependencies stalls! 2011 B. H. Meyer 13

Instruc5on- Level Parallelism (ILP) Goal: exploit instruc5on independence to improve performance Challenge: hazards, dependencies stalls Branch predic5on: guess which execu5on path Instruc5on scheduling: reorder instruc5ons Specula5ve instruc5on execu5on Superscalar instruc5on execu5on: allow more than one instruc5on to complete at a 5me 2011 B. H. Meyer 14

Memory Hierarchy Maintaining the illusion of fast, infinite memory Mul5ple- level memory system Cache performance and op5miza5on Size, internal organiza5on, behavior, etc. Virtual memory organiza5on 2011 B. H. Meyer 15

Mul5processor Architecture ILP has limits; boost performance with thread- level parallelism! (TLP) Mul5ple- instruc5on, mul5ple- data machines (MIMD) Concurrently execute mul5ple threads in parallel New overheads: communica5on, synchroniza5on Two classes (physical memory structure) centralized memory mul5processors physically distributed- memory mul5processors Two models (memory architecture and communica5ons) shared memory mul5processors message- passing mul5processors 2011 B. H. Meyer 16

Next Time Fundamentals of Computer Design Read Chapter 1! No class Monday First homework out on Wednesday First tutorial the end of next week 2011 B. H. Meyer 17