CS 286 Computer Organization and Architecture

Slides:



Advertisements
Similar presentations
Introduction to Information Technology: Your Digital World © 2013 The McGraw-Hill Companies, Inc. All rights reserved.Using Information Technology, 10e©
Advertisements

Office 2003 Introductory Concepts and Techniques M i c r o s o f t CPTG104 Intro to Information Systems Dr. Hwang Essential Introduction to Computers.
 Chasis / System cabinet  A plastic enclosure that contains most of the components of a computer (usually excluding the display, keyboard and mouse)
By: Dwayne Burl.  The Central Processing Unit (CPU) is responsible for interpreting and executing most of the commands from the computer's hardware and.
Parallel Computers Organizations and Architecture Department of Computer Science Southern Illinois University Edwardsville Summer, 2015 Dr. Hiroshi Fujinoki.
The Mechanics Of Computers The Operating System (OS) & Hardware.
Hyper Threading (HT) and  OPs (Micro-Operations) Department of Computer Science Southern Illinois University Edwardsville Summer, 2015 Dr. Hiroshi Fujinoki.
Parts of the Computer System
INTRODUCTION TO COMPUTERS. A computer system is an electronic device used to input data, process data, store data for later use and produce output in.
Computer Parts There are many parts that work together to make a computer work.
Sara Naheed Amjad Information Technology
Sara Naheed Amjad Information Technology
Basic Computer Hardware and Software.
Applied Operating System Concepts
Power Supply.
Introducing Computer Systems
Section 2.1 Section 2.2 Identify hardware
An Overview of the Computer System
Essential Computer Concepts
What is a computer? Simply put, a computer is a sophisticated electronic calculating machine that: Accepts input information, Processes the information.
Chapter 1: A Tour of Computer Systems
Introduction to Computing
The CPU is the brain of the computer
Principles of Information Technology
What is a computer? Simply put, a computer is a sophisticated electronic calculating machine that: Accepts input information, Processes the information.
Basic Computer Hardware & Software
Operating Systems (CS 340 D)
Chapter 7.2 Computer Architecture
Linux Operating System Architecture
Spatial Analysis With Big Data
CS 286 Computer Organization and Architecture
Course Name: Computer Application Topic: Central Processing Unit (CPU)
Computer Parts There are many parts that work together to make a computer work.
Computer Parts There are many parts that work together to make a computer work.
Computer Parts There are many parts that work together to make a computer work.
Computer Parts There are many parts that work together to make a computer work.
Basic Computer Hardware and Software.
Looking Inside the machine (Types of hardware, CPU, Memory)
An Overview of the Computer System
Computer Parts There are four main equipment functions of a computer system: Input, Processing, Storage and Output. Input: the transferring of information.
0. What is a Computer?.
Computer Basics: Inside a Computer Part III
Operating System Concepts
Computer Parts There are four main equipment functions of a computer system: Input, Processing, Storage and Output. Input: the transferring of information.
Chapter 1: How are computers organized?
Introduction to Operating Systems
Five Key Computer Components
Introduction to Operating Systems
Computer Parts There are many parts that work together to make a computer work.
Computer Parts There are many parts that work together to make a computer work.
CS 286 Computer Organization and Architecture
Introduction to Computer Architecture
CS 286 Computer Organization and Architecture
CS 286 Computer Architecture & Organization
Data Communications and Computer Networks
What makes it work…let’s get physical
CS 286 Computer Organization and Architecture
Process Synchronization
Computer Parts There are many parts that work together to make a computer work.
Welcome to CS314 Operating Systems A Quick Tour for Introduction to OS
Computer Parts There are many parts that work together to make a computer work.
Department of Computer Science
Process/Code Migration and Cloning
OS Boot Sequence and File System
Department of Computer Science
Operating System Concepts
Threads: Light-Weight Processes
Operating System Concepts
Operating System Concepts
OS Boot Sequence and File System
Presentation transcript:

CS 286 Computer Organization and Architecture Parallel Computers Organizations and Architecture Department of Computer Science Southern Illinois University Edwardsville Fall, 2017 Dr. Hiroshi Fujinoki E-mail: hfujino@siue.edu

CS 286 – Parallel Computers Four hardware architecture for “parallel computers”  Tightly-Coupled Multi-Processor System  Functionally-Specialized Multi-Processor System  Loosely-Coupled Multi-Processor System  Distributed Systems (“most loosely coupled systems”) Mult_Sched/001

CS 286 – Parallel Computers  Tightly-Coupled Multi-Processor System Multi-Processor System (multi-processor motherboard) Single-Processor System with a multi-core processor Motherboard Motherboard Processor Processor Processor Core (ALU and others) Multi-Processor System Single-Processor System with multi-core processor Mult_Sched/002

CS 286 – Parallel Computers  Tightly-Coupled Multi-Processor System Multi-Processor System (multi-processor motherboard) Two processors on a motherboard Mult_Sched/003

CS 286 – Parallel Computers  Tightly-Coupled Multi-Processor System Single-Processor System with a multi-core processor CPU cores Mult_Sched/004

CS 286 – Parallel Computers  Functionally-Specialized Multi-Processor System Examples: GPU on graphics card (GPU = “Graphic Processing Unit”) Built-in processor on high-speed disk controllers or NICs (especially those using DMA)  Processor sends graphic command to GPU  Graphic Interface  GPU processes image data in the graphic-card memory  Motherboard  Graphic-card performs D/A conversion using DAC.   Graphic-card sends analog image signals (RGB-signals) to monitor  DAC Monitor (CRT, Flat Panel) Video RAM (“VRAM”) GPU Processor Mult_Sched/005

CS 286 – Parallel Computers  Functionally-Specialized Multi-Processor System Examples: GPU on graphics card (GPU = “Graphic Processing Unit”) Control Program (in ROM) DMA SCSI I/O card CPU Mult_Sched/006

CS 286 – Parallel Computers  Loosely-Coupled Multi-Processor System Multi-Systemboard (multiple motherboard) computers A computer with multiple motherboards (“blades”) Processor Blades communicate through the bus Each blade is a computer Communication delay over the bus System Board (Motherboard) at least “s” order Memory “Bus” Computer System Mult_Sched/007

CS 286 – Parallel Computers  Loosely-Coupled Multi-Processor System Multi-Systemboard (multiple motherboard) computers Mult_Sched/008

CS 286 – Parallel Computers  Distributed Systems (“most loosely coupled systems”) Processor Local Memory Secondary Storage Other I/O File (data) Data Migration Process (executable codes) Process Migration AS 1 AS 4 AS 2 AS 3 Processor Local Memory Secondary Storage Other I/O Network Mult_Sched/009

CS 286 – Parallel Computers Three different types of tightly-coupled multi-processor systems (1) “Fine-grained” multi-processor parallel computers (2) “Medium-grained” multi-processor parallel computers (3) “Coarse-grained” multi-processor parallel computers Mult_Sched/010

CS 286 – Parallel Computers Fine-Grained Multi-Process Granularity: 1~20 instructions Fine-grained = instruction-level multi-processing A = B + C; X = Y + Z; W = A + X; Your program (binary executable) Dependency CPU synchronization Mult_Sched/011

CS 286 – Parallel Computers Medium-Grained Multi-Process Medium-grained = thread-level multi-processing Your program (binary executable) ThreadA ThreadB ThreadC ThreadD Processor Processor a thread of execution is the smallest sequence of programmed instructions that can be managed independently by a scheduler, which is typically a part of the operating system Mult_Sched/012

CS 286 – Parallel Computers Medium-Grained Multi-Process Example: Web Browser ThreadA -- Display thread (text output & jpeg image processing) ThreadB -- Taking user inputs (edit boxes, radio boxes in the browser window ThreadC -- Network input (receiving data from network) ThreadD -- Network output (sending data to network) ThreadA ThreadB ThreadC ThreadD Receiving data Displaying data User makes inputs Transmit data Receiving data Mult_Sched/013

CS 286 – Parallel Computers Medium-Grained Multi-Process Granularity: 20~200 instructions Example: Web Browser ThreadA -- Display thread (text output & jpeg image processing) ThreadB -- Taking user inputs (edit boxes, radio boxes in the browser window ThreadC -- Network input (receiving data from network) ThreadD -- Network output (sending data to network) ThreadA ThreadB ThreadC ThreadD Receiving data Displaying data User makes inputs Transmit data Receiving data Browser execution with better responses Mult_Sched/014

CS 286 – Parallel Computers Coarse-Grained Multi-Process Coarse-grained = (process-level) multi-tasking Process assignment to multiple processors in multi-tasking environment Memory Processor Time Mult_Sched/015

CS 286 – Parallel Computers Coarse-Grained Multi-Process Memory Processor Mult_Sched/016

CS 286 – Parallel Computers Coarse-Grained Multi-Process Granularity: 1~100 M instructions Coarse-grained = process-level multi-tasking Process assignment to multiple processors in multi-tasking environment Processor Pool Granularity = ms order 1ms (@ 1GHz) = 1 million instructions Memory 100ms (@ 1GHz) = 100M instructions Time Mult_Sched/017