AVALJA(,:AO DE DESEMPENHO DE UM SISTEMA MULTIPROCESSADOR

AVALJA(,:AO DE DESEMPENHO DE UM SISTEMA MULTIPROCESSADOR Ricardo Zelenovsky Instituto Militar de Engenharia Seção de Eletricidade - SE/3 Praça General...
4 downloads 0 Views 1MB Size
AVALJA(,:AO DE DESEMPENHO DE UM SISTEMA MULTIPROCESSADOR Ricardo Zelenovsky Instituto Militar de Engenharia Seção de Eletricidade - SE/3 Praça General TibÚrcio, 80- CEP 22290 Rio de Janeiro - RJ RESUMO

f proposto o modelamento de um sistema multiprocessador. E feita análise de seu desempenho com relação a decomposição e alocação de subproblemas aos processadores , tamanho do grão e eficiência do "cache". São estabelecidos critérios para adequar o s istema aos algoritmos de forma a maximizar o desempenho. ABSTRACT The proposition is the modeling of a multiple-processor system . An analysis of its performance is done respectively with the decomposition and allocation of subproblems to processors, grain size and hit- ratio of cache . Criter i a are es tabli shed in order to tune up the system with the algorithms so as to rise up th e performance to its maximum. 1. INTRODUÇÃO A avaliação de desempenho de sistemas mult ipr~­ cessadores não e uma tarefa simples, pois alem da grand e quantidade de parâmetros a serem anali sados, o inter-relacionamento entre eles e ~amplexo e difícil de ser quantizado.

"

Segucdo Cvetanovic [ 1 ) os parâmetros de influên cia mais significativa na performance de um sis tema multiprocessador são :

-

2 8 ARRMIENTOS

/

68020

quantidade de paralelismo intrínseco do problema, método utilizado na decomposição do problema em subproblemas, método utilizado para alocar os s ubpr nblcmas aos processadores, tamanho do grão , metodo de acesso aos dados, es trutura de interconexão (acesso as memorias), velocidades de processadores, memória e rede de interconexão.

l O Nhytcs/s e g c :td ,, )

68020

ó S0 20

so

s o

s o

s o

256 K

256 K

256 K

256 K

CACIIE 64K

CACIIE 64K

CACHE 64K

CACH E 6 4K

Mn!ÕRIA LOCAL

Esse trabalho visa o desenvolvimento de vários modelos simplificados para um sistema multiprocessador, avaliando-os segundo os parâmetros lis tados, a fim de determinar suas interaçÕes .

68020

4

a 32

~lbytes

Figura 1. Placa de Processamento Geral (PPG) .

2 . MINISUPERCOMPUTADOR MS8701 Nos laboratórios da Escola Politécnica da Universidade de são Paulo, realiza-se, sob ori cnt~ ção do professor João Antonio Zuffo , um trabalho sobre arquitetura paralela, pioneiro no Br~ sil. Es tá em desenvolvimento o HINISUPERCOMPUT~ DOR MS8701 cuja unidade básica de processamento paral elo é constituída de 4 processadores 68020 da Motorola reunidos em uma "Placa de Processamento Geral", PPG. O sistema completo constitui-se de 16 dessas PPGs ligadas via 2 barramen tos VME. A figura 1 descreve o esquema de uma PPG ond e pode ser notado o processador 68020, a memória local e os 2 barramentos "VME".

A figura 2 mostra a ligação de até 16 dessas PPG via barramentos . A memória local de cada PPG p~ de ser acessada pelos p rocessadores de ou t r.: PPG, sendo nesse caso chamada de memór ia externa. Existem pois, 3 níveis de hierarq uia de memória : memÓria cache , memória local, memória externa .

2 BAR RAMENTOS (10 Hb y tcs/seg c ada )

Figura 2 . Esquema do MS8701 com as 16 PPG .

11.8.3. 1

O esquema de arbitração dentro d e uma PPG e co nhecido como "round robin", onde a hierarquia de prioridad e cir cula e ntre os elementos concorrentes (a cada i nstante um processador é o mais prio ritári o) ; 64 processadores d i sp utam a cessos aos ba rrame ntos sendo o esquema de ar~ britação novamen t e o "round robin".

p

1

p 2

p 3

p 4

I'

3. MODELO E SUPOSIÇÕES A carga d e processamenEo e de comunicação r e sultante da decompo s i çao do algoritmo, é i gual mente distribu Í da en tre os processadores( " comu nicação " aqui designa acesso ã memória) . O pro ces samento é ca racterizado por uma "unidade de processamento", up e a comuni cação pela "unida de de c omunicação", uc . A seguir são designa~ das as princ ipais variáveis. Tp -+ quantidade d e " up " de um dado algoritmo , tp-+ tempo gasto para exec ut ar uma "up", Te -+ quantidad e de "uc" de um dado algoritmo, te-+ tempo gasto para executar um "uc ", N -+número de processador es , BW -+ banda passante da memória, HR-+ taxa de acertos do "cache" (hit ratio). Análogo ã definição dada por Vrsa lovic [2], de finem-se: "Função Decomposição de Process amen~ to", Dp, como a razão e ntr e o tempo de pr ocessamento para um sistema uniprocessador e o te~ po de processamen t o para c ada processado r em um sistema multiprocessador e - "Função Decomposição de Comunicação", De , como a razão entr e o tempo d e acesso a dados em um sistema unipro cessador e o t empo de acesso a dados pa r a cada processador em um s istema multiprocessador. Os parâmetros t e , tp , N, BW dependem das caracterÍstic as do sistema , já De , Dp, Te, Tp dizem respeito ao al goritmo. A adequabilidade de um algoritmo a o processamento paralelo é re presentada por s ua s funçÕes Dp e Dc , cal culadas para cada al goritmo. Por exemplo, a transf orma da rápida de Fourrier tem De= O(N/LogN). Como o interesse do pr esen t e trabalho é o es tu do dos esq uemas d e inte r co nexão ent r e processa dores e memória , utiliza- se Dp = N para evitar que a decomposição do processame nto não mascar e os resultados. " Ganho de Velocidade", S (speed up) e dado pela r elação e ntre o tempo gas t o em um s i stema un iprocessador e o t empo gas t o em um sistema multiprocessador. O sistema uniprocessador básico ê cons t i tuído por um process ado r e uma me mÓ ria i dênticos as da PPG sem " cache".

lt

ARBITRADOR MEMÓRIA

Fi gura 3 . PPG isolada (caso 1) . O tempo para execução serial ê dado pela soma dos tempos gastos em processamento e comunicação, (Tp tp + Te te); já o tempo para execução paralela ê dado por:

_!E_ tp + Te Dp

4.1. Caso 1. PPG I so lada Este ê o caso mais simples onde toda :a:ga de trabalho é distribuída dentro de uma untca PPG . Nesse esquema N processadores (O < N < 5) disputam a memór i a c uja arbit r ação ê feita segundo o "round r obin".

N

te

De

BW

O "cache" ê car acte ri zado pe l o seu "hit-ratio", sendo es t e dependente da estrutura do algor i t mo e do t amanho do cache. O tempo de ciclo de acesso ao cache (tcache) ê de 180 nseg e como o tempo do c iclo de acesso a memória local é de 480 nseg , resulta a relação xl=tcache/tc=0.37. Os Te acessos realizados podem ser divididos em (HR Te) acessos no c ache e ((1- HR) Te) aces sos fora do cache . Assim o tempo gasto para exe c uçao paralela ê dado por :

___!E_ tp + (1 -HR )~ tc-N-+HR~ t e a e he Dp

BW

De

De

Logo o ganho de velocidade ê dado por : 1 + K

s

_K_+ ( 1-HR) Dp De

K

=

Tp tp

(1)

__J!_+~

BW

xl

De

-+ r elação entre processamento

Te te e eomuni caçao . ! ~o1l.f\[P(I

PP6

K:! O

ou~ t

D~ =N

:SADvRES

.

'

'

'

Jo

Dt:H

40

~ .; :~ . 0

N

No presente trabalho são fo rnecidos meios para determinar qual a melhor arquitetura do MS8701 frente a uma certa carga de trabalho, caracterizada pelo Tp, Te , Dp e De. Existe ainda difi culdade para estimati va do "hit-ratio" e dos acessos a memória externa. As diferenças de de sempenho das arquiteturas são convertidas em banda passante BW' do sistema hipotético, permitindo a quantização da comparação.

A conversão em banda passante da PPG hipotética, dessas alteraçÕes de velocidade, é feita pe las equaçÕes (3) e (9), resultando na equação (4) para N < 5 e na equação (10) para N > 4. N

.....s.._ + (1-q)

5. CONCLUSÕES

Figura 12. Caso 3

BW'=

(11)

j

L........:r:::...:.:r::::::::::

40

+ Tps

l

I

: ~r;: :"F;; r:-"t;;;~ HUAfRO OE

Tp

Dp

:0. 2 X4: 2 X\:0. 37

so

;

·q: O.. ~..

-~01 '5 ' r. o 70

IIR:O. 8 li1: 0. 37

Figura 13 . Caso 3 (serial).

11.B.3.5