Aktuality  |  Články  |  Recenze
Doporučení  |  Diskuze
Grafické karty a hry  |  Procesory
Storage a RAM
Monitory  |  Ostatní
Akumulátory, EV
Robotika, AI
Průzkum vesmíru
Digimanie  |  TV Freak  |  Svět mobilně

K6-3 a L3 cache

20.3.1999, Vít Zatloukal, recenze
K6-3 a L3 cache
Cache paměti mají na výkon K6-3 silný vliv.
Před uvedením naprosto převratného procesoru K7 nás AMD ještě obšťastní inovovaným procesorem pro Socket 7 s označením K6-3. Hlavní odlišností od předchůdců je umístění 256KB L2 cache přímo na čip (běží na stejné rychlosti jako procesor). Vylepšení je to dost znatelné, K6-3 díky tomu překonává i Pentium II na stejné frekvenci (více najdete v našem článku).

Přesunutím L2 cache paměti přímo na procesor se z "bývalé" L2 cache paměti na základní desce stane L3 cache. Zajímavé je porovnání benchmarkových výsledků K6-3 450MHz, K6-2 300MHz a Celeron A 450MHz, Celeron 300MHz. Nárůst výkonu ve Winbench 99 u K6-3 oproti K6-2 je 64%, zatímco Celeronu A oproti obyčejnému Celeronu jen 60%. Rozdíl 4% se může zdát malý, je ale třeba vzít v úvahu, že Celeron nemá žádnou L2 cache, zatímco K6-2 využívá (v tomto případě 2MB) L2 cache na základní desce. Ještě zajímavější je srovnání, pokud L2 cache na základní desce vyřadíme, K6-3 pak dosahuje vyššího výkonu o neuvěřitelných 102%. Rozdíl ve výkonu K6-3 s povolenou a zakázanou cache pamětí na základní desce je 11% (L3 cache tedy dává K6-3 o 11% vyšší výkon).

Podle AMD má 1MB L3 cache u K6-3 za následek o 6% vyšší výkon v kancelářských aplikacích. Může se zdát, že to není mnoho, ale je to stejný rozdíl jako mezi procesorem na 350MHz a 400MHz. Proč je K6-3 (a samozřejmě i K6-2) tak závislý na cache paměti ? To vyplývá ze způsobu a hlavně rychlosti zpracování instrukcí. K6-2 i Pentium II jsou tzv. post-RISC procesory, které pracují s x86 sadou instrukcí. Před jejich vykonáním je třeba x86 instrukce převést na RISC. x86 jsou CISC (Complex Instruction Set) instrukce, které mohou být malé (<8 bajtů) nebo velké (>16bajtů), a v instrukční sadě jich je obsaženo mnoho. RISC instrukce jsou stejně velké jako CISC, ale v instrukční sadě jich je méně, to znamená, že jejich vykonání je rychlejší a efektivnější.

Při zpracování x86 instrukcí jsou tyto nejprve dekódovány do RISC instrukcí, které jsou dále rozděleny do bufferů, podle toho jak budou postupně vykonávány. Moderní procesory totiž nemusí vykonávat instrukce tak, jak jdou v programovém kódu postupně za sebou, ale mohou si je přeuspořádat do výhodnějšího pořadí (tzv. out-of-order). Po vykonání instrukcí je vše vráceno do původního pořadí.

Srovnejme nyní K6 a Pentium II jádro z hlediska rychlosti vykonávání jednotlivých kroků. K6 dokáže dekódovat dvě x86 instrukce během jednoho cyklu, zatímco PII zvládne tři (to je o 50% více). Ve vykonávání RISC instrukcí je však rychlejší K6 (6 RISC instrukcí během cyklu) než PII (3 RISC instrukce během cyklu). Jinými slovy, Pentium II rychle dekóduje, ale pomalu vykonává instrukce, K6 naopak. Dekódované instrukce v Pentium II musí v bufferech čekat na vykonání, zatímco u K6 jsou buffery s instrukcemi po většinu času prázdné. Pro využití plného výkonu K6 je tedy třeba jej zásobit instrukcemi, nejlépe z L1 a L2 cache (v případě K6-3 i L3 cache). Proto je tedy vliv cache pamětí na výkon procesorů řady K6- větší než u Pentium II a Celeronů.

reklama