Pentium 4 Prescott: šampión nebo pouhý předskokan? | Kapitola 3
Seznam kapitol
Dnešní den se nese ve znamení uvedení nového procesoru Pentium 4. Právě dnes nastupuje nové jádro které bylo ohlášeno už na IDF (Intel Developer Forum) začátkem roku 2002. Prescott, neboť tak se procesorový nováček jmenuje, vychází z architektury NetBurst a to, že Intel zůstal u označení Pentium 4 svědčí o tom, že spíše než o revoluci se jedná o evoluci. Nekoná se tedy schéma: "přišel, viděl, zvítězil" ale "přišel, viděl, připravil". Pojďme se podívat, na co se budeme muset připravit v budoucnu i my. A věřte mi, že nás nejspíše čeká doslova žhavá budoucnost...
Intel slibuje zlepšenou předpověď větvení (branch prediction), zlepšený pre-fetch a zrychlení celočíselných výpočtů.
Prodloužení pipeline
Delší výpočetní pipeline je cestou, jak využít více výpočetních "slotů" v situaci, kdy rychlost paměti zdaleka nestačí sledovat rychlost moderních procesorů.
Proč delší pipeline?Procesory dnes interně pracují na frekvencích které se blíží 10ti násobku frekvence paměti. Bez dlouhé výpočetní pipeline by jejich vysoký takt neměl žádný smysl - procesor by jen čekal na paměť.
i
Zdroj: PCTuning.cz
Dlouhá pipeline (tu si můžeme představit jako výrobní linku v továrně která montuje auta) dovoluje provádět množství elementárních operací souběžně a současně (představte si, že by se v opačném případě celé auto montovalo na jednom pracovišti). Problém nastává, pokud dojde ke stavu "cache miss" (např. chybnou předpovědí větvení) - je to jakoby na lince zjistili, že už se má vyrábět jiný model auta. Pipeline se v tom případě musí vyprázdnit (rozdělaná práce je "resetnuta") a začíná se plnit od začátku. Čím je pipeline delší, tím déle trvá celý systém znovu rozběhnout (samozřejmě nedojde ke ztrátě dat, jen k "mikro" zdržení). Předpokládá se, že délka pipeline je u současných Prestottů 30 nebo dokonce i 35 "stages" - to by mělo stačit k dosažení asi 4GHz, výše se tato pipeline musí ještě dále "prohlubovat". Pozn: u Nortwoodů stačilo 20 a u Pentií III jen 10 "stages". |
Nevýhodou dlouhé a úzké pipeline je, že výkon procesoru je velmi závislý na technologiích snižujících latence (zpoždění) v systému jako je np. efektivní předpovídání větvení kódu (branch prediction), "předzásobení daty" (prefetching) a také na efektivní práci vyrovnávací paměti cache. Také Intelem tolik oblíbené vícevláknové paralelní zpracování dat (HyperThreading) je metodou jak snižovat ztráty způsobené zpožděním - v případě stavu "cache miss" může procesor, v ideálním případě, naplnit jednotky instrukcemi z dalšího výpočetního vlákna.
Je tedy pravděpodobné, že v klasickém "jedno-threadovém" scénaři a na nízkých počátečních frekvencích nebude Prescott nijak excelovat. Je také zřejmé, že nový vítr do plachet Prescot nabere s dalším zvýšením frekvence FSB (to už ale bude s novými čipsety a na platformě Socket T).
Instrukce SSE3
Prescott obsahuje 13 nových instrukcí (PNI, Prescott New Instructions) které jsou nazvané SSE3.
Kuriózní je, že většinu nových instrukcí stanoví instrukce, na které se v sadách SSE nebo SSE2 "zapomnělo". Výjimkou jsou nové instrukce pro synchronizaci výpočetních vláken a instrukce LDDQU, která by mohla urychlit kompresi videa až o 10%.
Cache a paměťový subsystém
Většinu tranzistorů v jádře zaměstnává 1MB velká paměť cache druhé úrovně (i když cache L1 pro data také narostla, z 8KB na 16KB). Zdá se však, že další honba za vyššími takty způsobila, že rychlost cache Prescottu je ve srovnání s Nortwoodem nižší.
Změny jádra si vyžádaly změny v časování paměti cache - u 16KB bloku dat jsou to 4 a 28 cyklů (L1 a L2) proti 2 a 19 cyklům Northwoodu. Lze tedy konstatovat, že v současné situaci je paměť cache nejenom větší, ale zároveň i pomalejší - latence cache L1 je prakticky dvojnásobná!
Pozn. redakce: evidentně se počítá s vyššími takty jádra, kdy by byl nízký počet čekacích cyklů Northwoodu (2 cykly přístupu k L1) neudržitelný. V případě některých menších testovacích smyček dojde ve srovnání s Northwoodem téměř jistě ke zpomalení výpočtu.
Pojďme se podívat co na Prescottu inženýry nejvíce pálí...