Wikipédia:Tudakozó/Archívum/2020-11-18
A Tudakozó főoldala • Én szeretnék választ adni! • Archívum • Eszmecsere a válaszadó önkéntesek között• Válaszadó sablonok • TUGYIK |
Egy szótárba illő kérdésnek, a szavak értelmezésének inkább a Wikiszótárban nézz utána.
A Wikipédia Tudakozójának önkéntesei vagyunk, és enciklopédiába, lexikonba való témákban igyekszünk választ adni.
Megkérünk, hogy először a Wikipédia automatizált belső keresőjével próbáld a választ megkeresni, és csak ha ott nem találtad meg, akkor kattints ide, és tedd fel nekünk a kérdésedet!
A kérdésed (nem a válasz még!) egy-két perc elmúltával a mai kérdéseket tartalmazó lap alján fog látszani.
(Ha mégsem látszana, akkor próbáld meg a lapot a böngésződben frissíteni.)
Kérünk, hogy legyél türelemmel – itt mindenki a szabad idejét fordítja arra, hogy a segítségedre legyen.
Esetleg csak holnap, holnapután akad valaki, aki válaszolni tud neked, sőt néha még később írnak be egy választ a már archivált lapra.
Ha a mai lapot később keresed, ezt írd be a keresőablakba: Wikipédia:Tudakozó/Archívum/2024-12-18, vagy keresd az Archívumban.
A legutóbbi pár nap:
- Wikipédia:Tudakozó/Archívum/2024-12-14 Négy napja
- Wikipédia:Tudakozó/Archívum/2024-12-15 Három napja
- Wikipédia:Tudakozó/Archívum/2024-12-16 Tegnapelőtt
- Wikipédia:Tudakozó/Archívum/2024-12-17 Tegnap
- Wikipédia:Tudakozó/Archívum/2024-12-18 Ma
Mi a különbség a szektor cache és a csoport-asszociatív cache között?
[szerkesztés]Ez a kérdés még nyitott. Ha tudod a választ és a forrást is meg tudod adni, akkor kattints a szakaszcím mellett a [szerkesztés] feliratra. Ha új kérdést akarsz feltenni, kattints ide! |
- A definíciója teljesen más, de csak másképp van megfogalmazva ugyanaz! Legyen a blokkméret = vonalméret 64 byte: a cím alsó 6 bitjét nem kell tárolni. Legyen 64 KB cache: 1024 blokk, mindhez tárolni kell a cím többi bitjét. Olvasáskor és íráskor is adott a cím, kell a cache-beli blokk sorszáma, vagyis a címe: 1024 címösszehasonlító áramkör kell. Ez sok, és sok hőt is termel. Megoldás: negyedeljük az összehasonlító áramkörök számát: 256 darab legyen, így 1 áramkörhöz 4 blokk tartozik, így 4 cím hogy azok hol vannak a memóriában: egy 2 bites címző egység is kell mind a 256 darab összehasonlító áramkörhöz. Vagyis 4 darab 16 KB-os teljesen asszociatív cache-ünk van. A cím alsó 6 bitjét nem tároljuk, további 2 bit döntse el hogy a 4 közül melyikbe kerüljön: 256 byte-os egységekre bontva a memóriát, egyenletesen kell eloszlania hogy melyik 64 byte-os része van a cache-ben, hogy jó legyen a cache kihasználtsága. Ez egy csoport-asszociatív cache: nem tudom, hogy 256 utas, vagy 4 utas. Csakhogy ez egyben szektor cache is! Ugyanis a cím egyes bitjei adják a blokkcsoportot, más bitjei a blokkcsoporton belüli blokk számát: e 2 között nincs sorrend! A szócikk szerint csak a sorrend a különbség: először az egyik, azon belül a másik szerint: csakhogy nincs először, nincs azon belül: ez olyan minthogy a+b = b+a: nincs sorrend! Egyik meghatározza az egyiket, a másik a másikat, egyszerre, párhuzamosan! Legfeljebb az lehet a különbség, hogy a cím melyik 2 bitjét használjuk a 2 bites címzőáramkörnek címként: az alsó 6 bitet nem tároljuk, cím megmaradó részének alsó 2 bitje kell: másképp felesleges: semmi előnye, de hátrányos, ha nem egyenletes az eloszlás. A szócikk szerint csoport-asszociatív cache esetén több teljesen asszociatív cache-ünk van, de egyszerre csak 1-et használunk! Ekkor nem spórolunk a címösszehasonlító áramkörökkel, csak kevesebb hőt termel. Ugyanazt a hatást érjük el, ha csak 1 teljesen asszociatív cache-hez van címösszehasonlító áramkör készletünk, és mindhez van 1-1 2 bites címzőáramkör, mellyel kiválasztjuk hogy a 4 közül melyik címmel hasonlítsa össze. Nyilván ezt a 2 bitet se kell tárolni. Ez viszont pont a szektor cache! A cache-ek általában képesek egyszerre több műveletet végezni, például több olvasást egyszerre, mindnek saját címe van: mintha több cache lenne! Ekkor már értelmes lehet hogy megvan mind az 1024 címösszehasonlító áramkör, de 4 részre van osztva, így egyszerre akár 4 olvasást/írást is lehet végezni a cache-en. Lehet hogy ez lenne a különbség? Tehát az áramkörökkel és a termelt hővel se spórolunk, de lehetővé tesszük egyszerre több művelet végzését. A processzorok hőtermelését figyelembe véve ez tűnik a legreálisabbnak, hiszen piszkosul melegszenek. Vagyis csoport-asszociatív cache-nél lehet egyszerre több művelet is, szektor cache-nél meg csak 1-et. Elvileg lehetne a 2 kombinációja is: 512 címösszehasonlító áramkör, egyszerre 2 művelet. Ekkor el kell dönteni, hogy a 2 bit közöl melyik melyik legyen: ha az alsó, vagyis a 6. bit szerint döntjük el hogy melyik 256 blokkos csoport legyen, akkor az egyszerre 2 műveletnél elég ha 128 B-on belül egyenletes az eloszlás, persze a jó cache-kihasználtsághoz ekkor is 256 byte-on belüli egyenletes eloszlás kell. Ez tűnik a jobbnak: az egyszerre több műveletnél legyen jobb. A Fujitsu A64FX integrált áramkörnek 256 B-os blokkjai vannak, vagyis csak 256 blokkja van: 64 KB L1 adat + 64 KB L1 kód cache van magonként. És nem fogyaszt sok áramot. Ezalapján is nekem úgy tűnik, hogy ez lesz a különbség magyarázata. Mondjuk rakhattak volna mindhez egy 4 bites címzőáramkört, ekkor 16 B-os lenne a vonalméret: ez pont a 2 cache-típus kombinációja. Köszönöm aki tud segíteni!
- --94.27.132.186 (vita) 2020. november 18., 17:28 (CET)