45214 Datamaskinarkitektur - Løsning 1 1995


Løsning 1


Oppgave 1

a)

Den effektive CPI-verdien til prosessoren kan beregnes slik:
CPI       = klokkerate / instruksjonsrate 
     
          = (15 M sykler per sekund ) / (10 M instruksjoner per sekund)
     
          = 1.5 sykler per instruksjon      

b)

Den effective CPI-verdien til den nye prosessoren blir:
            (1.5 + ( 0.4 x 1.5))

          = 2.1 sykler per instruksjon

Maskinen vil derfor få en MIPS-rate på: (30 M sykler per sekund) / (2.1 sykler per instruksjon) = 14.3 MIPS

Oppgave 2

a) Usant:

I en multiprogrammert datamaskin kan IU-prosesser og system ``overhead'' overlappes med beregninger som utføres av CPU for andre programmer. En multiprogrammert datamaskin får dermed en bedre ytelse for brukeren, enn hva en datamaskin som ikke er multiprogrammert ville ha fått.

b) Sant:

Siden en MIMD-maskin utfører forskjellige instruksjoner, asynkront, er det vanskelig å utføre synkronisering vha. maskinvare, og spesielle synkroniserings-instruksjoner benyttes for synkronisering. I SIMD-maskiner har en gjerne en sentral kontrollenhet (``Single Instruction'') og prosessorene utfører instruksjonene synkront. Synkronisering kan derfor gjøres både av hardware og software.

c) Sant: (kan diskuteres)

En multiprosessor med delt-minne vil generelt være enklere å programmere siden data er delt. I en meldings-basert multiprosessor vil man måtte benytte spesielle protokoller for sending og mottak av data, noe som medfører komplekse programmer.

For delt-minne multiprosessorer er kommunikasjon implisitt, mens for meldigs-baserte multi-datamaskiner er kommunikasjon eksplisitt. Man må derfor i tilfellet av delt-minne være bevisst den nødvendige synkroniseringen, noe som kompliserer programmeringen. For meldings-baserte maskiner er synkroniseringen gitt ved sending av meldinger.

Skill mellom programmerings-modell og implementasjons-modell!

d) Usant:

Se svar i b). En MIMD maskin utfører sine instruksjons-strømmer på forskjellige prosessorer.

e) Sant:

Distribuert lager vil være bedre med tanke på skalerbarhet siden endringer bare utføres lokalt, og vil dermed i prinsippet ikke påvirke andre deler av systemet. Skal en datamaskin med delt minne skaleres opp, må også det delte lageret skaleres opp, noe som etter hvert blir fysisk umulig.


Pauline Haddow(pauline@idt.unit.no)
Last modified: Mon Apr 22 10:36:08 MET DST 1996