ASK 09 ILP

background image

Procesory ILP

1/17

Szybkie

wprowadzenie do

procesorów o

równoległści poziomu

instrukcji

background image

Procesory ILP

2/17

for( int i=1; i<4; i++ )

tab[i] = a[i-1] + b[i];

Równoległość poziomu instrukcji, przykład A

background image

Procesory ILP

3/17

for( int i=1; i<4; i++ )

tab[i] = tab[i-1] + b[i];

Równoległość poziomu instrukcji, przykład B

background image

Procesory ILP

4/17

Typy zależności, ograniczenie poziomu równoległości

True dependency

1. A = 3
2. B = A
3. C = B

Anti-dependency

1. B = 3
2. A = B + 1
3. B = 7

Output dependency

1. A = 2 * X
2. B = A / 3
3. A = 9 * Y

1. A2 = 2 * X
2. B = A2 /3
3. A = 9 * Y

for( int i=1; i<4; i++ )

tab[i] = tab[i-1] + b[i];

tab[1] = tab[0] + b[1];

tab[2] = tab[1] + b[2];

tab[3] = tab[2] + b[3];

for( int i=1; i<4; i++ )

tab[i] = a[i-1] + b[i];

tab[1] = a[0] + b[1];

tab[2] = a[1] + b[2];

tab[3] = a[2] + b[3];

przykład A

przykład B

background image

Procesory ILP

5/17

Architektury przewidujące równoległości

poziomu instrukcji

Front-end

Określenie zależności

Określenie niezależności

Przypisanie do jednost.

funkcjonalnych

Przypisanie do ścieżek

transferu danych

Kod aplikacji

Wykonanie

Zadania

kompilatora

Zadania

procesora

Określenie zależności

Określenie niezależności

Przypisanie do jednost.

funkcjonalnych

Przypisanie do ścieżek

transferu danych

Zależności

procesory

przepływowe

Sekwencja

procesory

superskalarne

Niezależności

EPIC

Niezależności

VLIW

Niezależności

TTA

ar

chi

tekt

u

ry

st

aty

czn

e

ar

chi

tekt

ur

y

dyn

ami

cz

ne

background image

Procesory ILP

6/17

Architektury przewidujące równoległości

poziomu instrukcji = ILP

ILP = Instruction Level Parallelism

background image

Procesory ILP

7/17

Architektura VLIW = Very Long Instruction Word

Atom

Instrukcji

Operacja

dla FU-1

Atom

Instrukcji

Operacja

dla FU-2

Atom

Instrukcji

Operacja
dla FU-N

...

Molekuł Instrukcji

Instrukcja VLIW

1980 - J. Fisher, Yale
University

VLIW jako

architektura wzorowana na
kodzie horyzontalnym

1984 - J. Fisher,
Multiflow, TRACE series

Analog Devices

Sharc DSP

Texas Instr.

C6000

NXP

TriMedia

STMicroelectronics

ST200

background image

Procesory ILP

8/17

Architektura superskalarna

background image

Procesory ILP

9/17

Architektura EPIC

Explicitly Parallel Instruction Computing

background image

Procesory ILP

10/17

Architektura VLIW, superskalarna i EPIC

H. Corporaal, Microprocessor Architectures: From VLIW to TTA, Wiley 1998

Atom

Instrukcji

Operacja

dla FU-1

Atom

Instrukcji

Operacja

dla FU-2

Atom

Instrukcji

Operacja
dla FU-N

...

Molekuł Instrukcji

FU-1

FU-2

FU-3

Jednostka

dekodująca

instrukcje

Jednostka

pobierająca

instrukcje

IDU

IFU

Pami

ęc programu

Pami

ęć

danych

CPU

FU-4

FU-5

RF

bl

ok

r

e

je

st

w

procesory VLIW, superskalarne i EPIC

Instrukcja VLIW

background image

Procesory ILP

11/17

FU-1

FU-2

FU-3

RF-1

RF-2

Jednostka

dekodująca

instrukcje

Jednostka

pobierająca

instrukcje

IDU

IFU

CN

si

ko

mu

n

ika

cyj

n

a

Pami

ę

c pr

ogramu

Pami

ęć

danych

CPU

Architektura TTA

background image

Procesory ILP

12/17

PE

PE

CN

si

e

ć ko

mu

n

ika

cyj

n

a

SU

RU

UU

Jednostka

uaktualniania

IQ

AS

Kolejka instrukcji

Pamięć aktywnych

operacji

IFU

Jednostka

pobierająca
instrukcje

OUs

Jednostki

przetwarzające

CN

do/od

lokalna

komunikacja

PE

Jednostka przetwarzająca

...

MIT Static Dataflow Architecture

Architektura przepływowa

background image

Procesory ILP

13/17

Dual - core

background image

Procesory ILP

14/17

Prawo Amdahla – forma ciężka i ogólna

0

1

n

k

k

k

S

P

S

=

=

S

Speed up – przyspieszenie
wykonania programu

k

P

k-ta część programu
podlegającego
przyspieszeniu

k

S

Stopień przyspiesznia k-tej
części programu

Program podzielony jest na n części, z których każdą możemy przyspieszyć
w różnym stopniu.

background image

Procesory ILP

15/17

(

)

1

1

N

N

S

N

α

=

+

Prawo Amdahla – forma oryginalna

N

S

Speed up – przyspieszenie
przy wykorzystaniu N proc.

N

Liczba procesorów

α

Część programu
wymagająca sekwencyjnego
wykonania

Tylko część programu można zrównoleglić. Pozostała część, ze względu na
występujące w niej zależności, musi być wykonana sekwencyjnie.

background image

Procesory ILP

16/17

Polecana literatura

1) H. Corporaal, Microprocessor Architectures: From VLIW to TTA, Wiley 1998

2) W. Stallings, Organizacja i architektura systemu komputerowego, WNT 2003

Rozdział 13

3) J. Stokes, Inside the Machine, No Starch Press, 2007

background image

Procesory ILP

17/17

KONIEC

dr inż. Mariusz Kapruziak

mkapruziak@wi.ps.pl

pok. 107, tel. 449 55 44


Wyszukiwarka

Podobne podstrony:
ASK 09 PiotrGębala MateuszMacięga
ASK 09 Pamieci masowe
ASK 09 Pamieci masowe
download Zarządzanie Produkcja Archiwum w 09 pomiar pracy [ www potrzebujegotowki pl ]
09 AIDSid 7746 ppt
09 Architektura systemow rozproszonychid 8084 ppt
TOiZ 09
Wyklad 2 TM 07 03 09
09 Podstawy chirurgii onkologicznejid 7979 ppt
Wyklad 4 HP 2008 09
09 TERMOIZOLACJA SPOSOBY DOCIEPLEŃ
09 Nadciśnienie tętnicze
wyk1 09 materiał
Niewydolność krążenia 09
09 Tydzień zwykły, 09 środa
09 Choroba niedokrwienna sercaid 7754 ppt

więcej podobnych podstron