09.71.35 Strikerfi I

Dmi 6


  1. i eftirfarandi forritsbt yfir HP PA-RISC smalaml. Geri r fyrir a breyturnar su gistum (i geti nota %a fyrir gisti sem inniheldur breytuna a, o.s.frv.).
                if (a == b)
                    c++
                else
                    d += 4;
    
    Til a f fullt fyrir dmi m smalamlsforriti aeins vera rjr skipanir. i fi hlft ef notaar eru fjrar skipanir ea fleiri.

  2. Hr a nean eru nokkrar stahfingar um skyndiminni. Segi hvort r su rttar ea rangar og, rfum orum, hvers vegna.
    1. Almennt er smellahlutfall (hit ratio) tengins skyndiminnis hrra en skyndiminnis me beina vrpun.
    2. Smellahlutfall mengistengis skyndiminnis me eins staks mengjum (1-way associative) er lgra en skyndiminnis me beina vrpun.
    3. Gagnafli vegna "write-back" skyndiminnis er yfirleitt meira en vegna "write- through" skyndiminnis.
    4. Aukin lnustr kemur sr betur fyrir gagnaskyndiminni en skipanaskyndiminni.


  3. Hverjir af neangreindum mguleikum (a ea b) eru betri me tilliti til skyndiminnis. Rkstyji.
       i)    a) for (i=0; i<10000; i++)       b) for (j=0; j<10000; j++)
                  for (j=0; j<10000; j++)          for (i=0; i<10000; i++)
                    A[i][j] = 2*A[i][j];             A[i][j] = 2*A[i][j];
    
                                     -------------
    
       ii)   a) int gildi[MAX];                  b) struct stak {
                int lykill[MAX];                      int gildi;    
                                                      int lykill;
                                                   };
                                                   struct stak S[MAX];
    
                                     -------------
    
       iii)  a) for (i=0; i<N; i++)           b) for (i=0; i<N; i++)
                  for (j=0; j<N; j++)              for (j=0; j<N; j++)
                    A[i][j] = 1/B[i][j];              {
                                                        A[i][j] = 1/B[i][j];
                for (i=0; i<N; i++)                  C[i][j] += A[i][j];
                  for (j=0; j<N; j++)              }  
                    C[i][j] += A[i][j];
    

  4. Tlva hefur 16 MB minni, 1 KB skyndiminni (cache), sem er mengistengi (set associative) ar sem hvert mengi hefur 2 lnur og hver lna er 8 bti.
    1. Lsi essu skyndiminni nnar (fjlda lna, fjlda mengja, hvaa bitar vistfangi gegna hvaa hlutverki, hvaa lnur minni fara hvaa mengi skyndiminni, ...)
    2. Gjrvinn vill f agang a eftirfarandi eins btis minnishlfum essari r:
      56C2A0, 8BE829, 78AEA4, 56C2A7, 00C2A1
      hvaa lnusti og mengi fara lnurnar sem n er og hvaa lnum er hent t ef ess arf? Gefi ykkur r forsendur sem arf, vibt vi a sem kemur fram dminu og segi fr eim.


  5. Sumar tlvur (til dmis HP PA-RISC) breyta ekki snarvistfngum yfir raunveruleg vistfng ur en vsa er skyndiminni. Lsi grfum drttum vinnuganginum slku kerfi segi hvaa kosti og galla a hefur mia vi a nota eingngu raunveruleg vistfng skyndiminninu.


Skili essum dmum hfi mitt fyrir mnudaginn 2. september.

hh@rhi.hi.is, 22. nvember, 1996.