SzA44. A Nehalem család II. Flashcards
A 3-szintes cache bevezetése és annak következményei a cache architektúrára
A NUMA kialakítás következményeképp a memória elérés támogatására módosították a cache rendszert.
- Megjelent a L3 cache 8MB mérettel
- az L2 priváttá vált (az elágazásbecslés pontosítása miatt - ha nincs cache hit, az több száz ciklus veszteség) és csökkentették 256KB méretűre (optimum méret - minél nagyobb, annál nagyobb az elérési idő)
Inkluzivitás: minden ami az L2-ben van, benne van az L3-ban is.
Exkluzivizás: ha az L3-ban nincs, akkor még benne lehet valamelyik L2-ben (snooping).
SMT
Többszálúság alapelve, hogy a két külön szál fel tudja tölteni egymás “üres járatait”. Kb 5-10% plusz érhető el vele általános célú alkalmazásokban. Speciális alkalmazásokban (pl. grafika) akár 30% is lehet.
Integrált teljesítmény kapuk
Nem lehet büntetlenül növelni a teljesítményt → le kell kezelni a diszcipációt
Integrált teljesítmény kapuk
A magok egyenként, egy-egy teljesítmény tranzisztoron keresztül vannak a tápfeszültségre kötve. A teljesítmény kapuk magonként fel-le kapcsolhatóak. Ha egy mag lekapcsol, nincs sem statikus, sem dinamikus disszipáció nincs. Ha egy nem használt mag lekapcsol, a disszipációs többlet felhasználható az aktív magok gyorsítására. Ez az alapja a Turbo Boost technológiának.
PCU
PCU (Power Control Unit)
Mikroprocesszor, aminek a felelőssége a magok ellátása feszültséggel. A magokban szenzorok vannak, amik mérik az áramot, fogyasztást, feszültséget és hőmérsékletet.
A PCU a mért értékek függvényében szabályozza a frekvenciát (szorzókon - PLL - keresztül).
A Nehalem előtt a Penryn-nél: Az operációs rendszer bevonódott a disszipáció kezelésbe azzal, hogy figyeli a passzív magokat, és különböző, előre meghatározott szintre állítja a frekvenciát (P1, P2 … állapotok). Mivel az OP rendszer logikai szálakat lát, nem magokat, ezért van egy közbülső réteg.
ACPI szabvány
Az ACPI szabványt kb. ‘95-ben fogalmazták meg, a Win XP támogatta elsőként valamilyen mértékben.
DVFS Dynamic Voltage and Frequency Scaling
Az OP rendszer látja a terhelés függvényében a processzor kihasználtságát. Ha 100%, akkor megküldi az üzenetet a processzornak, hogy a rendszert a legmagasabb frekvencián működtesse, és az ehhez szükséges feszültség mértékét. Ez a P1 állapot (előre meghatározott P állapotok tárolva vannak).
Ha egy mag csak 50%-ban kihasznált, a feszültség 40%-ra visszavehető a négyzetes összefüggés miatt (a frekvencia felezhető).
Passzív állapotok
Az alábbi állapotok modellenként eltérőek:
C0 - aktív állapot
C1 - aktív készenlét (a hardver leállítja az órázást, a disszipáció állapota valamelyest csökken)
C2 - L1 - L2 cache tartalom kimentése (flush)
… C3-tól passzív állapotok
C6 - a magok feszültsége majdnem 0, nem tudja megtartani az állapotát, azt tárolni kell.
Turbo Boost technológia
Ha egy mag inaktív (ACPI C3-C6-ig) akkor az így keletkezett disszipációs többlet felhasználható az aktív magok gyorsítására.
Bin : egyszeres órajel emelés (133MHz buszfrekvencia)
A PCU vizsgálja az aktív magok számát. Ha csak egy mag aktív, akkor 2 bin emelés lehetséges, ha egy magnál több, akkor maximum 1 bin. Az összes aktív mag azonos frekvencián üzemel! Ha mind a 4 mag aktív akkor is lehetséges emelni, ha a hőmérséklet engedi.
MSR (Model Specific Register) mondja meg a bin értékeket.
TEHÁT: Az OS meghatározza a P állapotokat. A PCU megállapítja az egyes magok feszültségét. Ha az OS szeretne teljesítményt növelni, és van hőtartalék (TDP és a PCU által mért értékek között különbség van) és a hőmérséklet engedi, akkor megemeli a frekvenciát.
Fontos, hogy ne melegedjen túl a rendszer, ezért a szenzorok által mért hőmérsékletet másodpercenként kb. 200x vizsgálja.