Advanced Computer Architecture: Understanding Parallel Computers and Their Design Issues, Assignments of Advanced Computer Architecture

An in-depth analysis of parallel computer architecture, covering various hardware, operating system, and applications issues. Topics include processor types, memory hierarchy, I/O management, compiler support, and performance measures. It also discusses Flynn's classification, SISD, SIMD, MIMD, and MISD systems, as well as programming and performance issues.

Typology: Assignments

2021/2022

Uploaded on 08/01/2022

fabh_99
fabh_99 🇧🇭

4.4

(53)

543 documents

1 / 44

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Advanced Computer Architecture
The Architecture of
Parallel Computers
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c

Partial preview of the text

Download Advanced Computer Architecture: Understanding Parallel Computers and Their Design Issues and more Assignments Advanced Computer Architecture in PDF only on Docsity!

Advanced Computer Architecture

The Architecture ofParallel Computers

Computer Systems

ApplicationSoftwareOperatingSystemHardwareArchitecture

No ComponentCan be TreatedIn IsolationFrom the Others

Operating System Issues

  • Allocating and Managing Resources• Access to Hardware Features
    • Multi-Processing– Multi-Threading
      • I/O Management• Access to Peripherals• Efficiency

Applications Issues

  • Compiler/Linker Support• Programmability• OS/Hardware Feature Availability• Compatibility• Parallel Compilers
    • Preprocessor– Precompiler– Parallelizing Compiler

Flynn’s Classification

  • Consider Instruction Streams and Data

Streams Separately.

  • SISD - Single Instruction, Single Data

Stream

  • SIMD - Single Instruction, Multiple Data

Streams

  • MIMD - Multiple Instruction, Multiple Data

Streams.

  • MISD - (rare) Multiple Instruction, Single

Data Stream

SISD

  • Conventional Computers.• Pipelined Systems• Multiple-Functional Unit Systems• Pipelined Vector Processors• Includes most computers encountered in

everyday life

MIMD

  • Multiple Processors cooperate on a single

task

  • Each Processor runs a different program• Each Processor operates on different data• Many Commercial Examples Exist

MISD

  • A Single Data Stream passes through

multiple processors

  • Different operations are triggered on

different processors

  • Systolic Arrays• Wave-Front Arrays

Performance Issues

  • Clock Rate / Cycle Time =

τ

  • Cycles Per Instruction (Average) = CPI• Instruction Count = I

c

  • Time, T = I

c^

×

CPI

×

τ

  • p = Processor Cycles, m = Memory Cycles,

k = Memory/Processor cycle ratio

  • T = I

c^

×

(p + m

×

k)

×

τ

Performance Issues II

  • Ic & p affected by processor design and

compiler technology.

  • m affected mainly by compiler technology

τ

affected by processor design

  • k affected by memory hierarchy structure

and design

Parallelizing Code

  • Implicitly
    • Write Sequential Algorithms– Use a Parallelizing Compiler– Rely on compiler to find parallelism
      • Explicitly
        • Design Parallel Algorithms– Write in a Parallel Language– Rely on Human to find Parallelism

Multi-Processors

  • Multi-Processors generally share memory,

while multi-computers do not.– Uniform memory model– Non-Uniform Memory Model– Cache-Only

  • MIMD Machines

Vector Computers

  • Independent Vector Hardware• May be an attached processor• Has both scalar and vector instructions• Vector instructions operate in highly

pipelined mode

  • Can be Memory-to-Memory or Register-to-

Register

SIMD Computers

  • One Control Processor• Several Processing Elements• All Processing Elements execute the same

instruction at the same time

  • Interconnection network between PEs

determines memory access and PEinteraction