Bestun forrita 2 Flashcards
Klukkutif per stak (CPE)
Þægileg leið til að tákna afköst forrits sem vinnur á vigra eða lista
Í okkar tilviki: TPS (CPE) = tif per aðgerð (cycles per OP)
Áhrif einfaldra bestana
Losnum við óþarfa umstang (overhead) í lykkjunni
Ofurkverða (superscalar) örgjörvi
Ofurkverða örgjörvi getur gefið út og
framkvæmt margar skipanir á einu klukkutifi. Náð er í
skipanirnar úr skipanastraumi og verkröðun þeirra
ákveðin á kvikan hátt.
Kostir við ofurkverða (superscalar) ?
ofurkverða örgjörvar geta nýtt sér samhliða
vinnslu á skipanalagi sem flest forrit hafa, án nokkurar
auka forritunarvinnu
Eru flestir nútíma örgjörvar ofurkverða (superscalar) ?
Já
Pípaðar verkeiningar
Skipta útreikningi upp í þrep
Senda hálfkláraðan útreikning frá þrepi til þreps
Með mörg þrep inn í sér
Intel Haswell örgjörvi
Samtals 8 verkeiningar (functional units)
Margar skipanir í framkvæmd samhliða
Biðtími (latency)
Hversu langan tíma tekur að klára þessa einingu?
Ef ég byrja núna hvað þarf ég að bíða lengi þar til að þessi eining kemur út
Afköst við Runubundin tengsl ákvaðrast af?
biðtíma aðgerðar (OP)
Áhrif afrúllunar lykkju
Hjálpar við heiltölusamlagningu
Annað batnar ekkert. Ennþá runubundin tenging (dependency)
Umraðaður útreikningur
Hægt er að hefja framkvæmd á aðgerðum í næstu ítrun snemma (engin tengsl)
Sjálfstæðar summur
Tveir sjálfstæðir “straumar” af aðgerðum
Hvað um stökk?
Stökk er smá vesen, því við vitum ekki hver næsta skipun er en til að laga það reynum við að troða óháðum skipunum á milli compare og jump
Stökkspá
Giska hvort skilyrt stökk verði tekið
Byrja framkvæmd skipana frá ágiskuðum stað en ekki breyta gistum eða minni
Afkastatap við ranga ágiskun?
Mörg klukkutif á nútíma örgjörvum
Getur dregið afköst verulega niður