|
Intel před několika roky slíbil, že své procesory bude vyvíjet procesem "tik-tak". "Tik" znamená změnu technologie, "tak" změnu architektury. Tak například procesory Pentium 4 a Pentium D ve své poslední generaci byly vyráběny procesem 65nm. Pak přišla mikroarchitektura Conroe (procesory Core), vyráběná toutéž technologií ("tak"). Následovala změna technologie ("tik") - přechod na 45nm - a máme stejnou mikroarchitekturu, pouze s drobnými vylepšeními jako větší paměti cache apod. Nyní na stejné technologii 45nm přichází nová mikroarchitektura procesorů s kódovým označením Nehalem ("tak"). Prvními reprezentanty byly desktopové procesory Core i7, uvedené na konci roku 2008, dne 31. března 2009 přichází dvoupaticová inkarnace této architektury pro servery a pracovní stanice. Následovat bude přechod na 32nm výrobní proces ("tik"), ale tak daleko ještě nejsme. V následujícím článku si ukážeme, čím je nová platforma zajímavá.
Především, Intel si vybudoval "stavebnici" bloků, podobně jako konstruktéři mají ve svých návrhových systémech katalogy strojírenských součástí nebo stavebních prvků. Z těch pak relativně jednoduše sestaví procesor podle zadaných požadavků (například 2 jádra, 4 jádra, 8 jader, paměť cache, řadič paměti, propojení QPI, v knihovně dílů je i integrovaná grafika apod.).
Oproti předchozí generaci se udává:
Technologické novinky mikroarchitektury Nehalem:
- integrovaný paměťový řadič - 3 kanály DDR3
- propojení QPI
- návrat Hyperthreadingu
- nové instrukce (SSE 4.2)
- vylepšené řízení spotřeby
Díky modularitě návrhu existují procesory Nehalem ve dvou paticích: LGA 1366 a LGA 1156.
Patice LGA 1366 se používá pro dvouprocesorové servery a jednoprocesorové pracovní stanice a výkonné desktopy. Procesor v této patici má 3 kanály paměťového řadiče a dva kanály QPI. Jeden kanál QPI slouží pro připojení k čipsetu, druhý pro vzájemnou komunikaci mezi procesory (u jednoprocesorových strojů je nezapojen).

Patice LGA 1156 je pak určena pro "střední proud", levné jednoprocesorové servery a běžné stolní počítače. Paměťové kanály jsou dva, podstatný rozdíl je však to, že přímo v procesoru je integrována sběrnice PCI Express x16 pro připojení grafické karty, a čipset se připojuje kanálem DMI (Direct Media Interface).To umožňuje zcela eliminovat tzv. severní můstek čipsetu, (čipset je prakticky jeden čip - bývalý jižní můstek), což vede k levnějšímu a jednoduššímu návrhu systému.

Důvodem integrace paměťového řadiče bylo, že dosavadní řešení - FSB neboli Front-side Bus, byla sběrnice společná pro stále větší počet jader, která v případě požadavků na přístup do paměti o tuto sběrnici soutěžila a vzhledem k tomu, že se došlo na samé hranice technickým možností zrychlování, začala představovat úzké hrdlo. Díky špičkové technologii zpracování křemíkových čipů si Intel mohl dovolit integrovat velkou vyrovnávací paměť cache, která tuto limitaci do velké míry eliminovala, ale tak jako tak přišel čas změny.
Jaké důsledky má tato na první pohled nevýznamná technologická změna? Je jich dost. Tak v první řadě u dvoupaticového serveru můžete osadit plnou kapacitu paměti, jen pokud osadíte oba procesory. Každý procesor obsluhuje svou polovinu maximální kapacity operační paměti a do té druhé přistupuje přes druhý procesor, což je pochopitelně pomalejší (přístupová latence je asi o 70% vyšší a propustnost zhruba poloviční - i tak jsou tyto hodnoty lepší než u FSB 1600MHz). Tato architekture se nazývá NUMA - Non-Uniform Memory Access, a vývojáři operačních systémů s touto vlastností musí počítat. Cestička je již naštěstí prošlapána, protože většinu práce museli vývojáři vykonat při optimalizaci pro platformu Opteron, a tak například platforma VMWare s tímto umí velmi kvalitně pracovat. Integrovaný řadič paměti má nejen lepší propustnost, ale - a to hlavně - podstatně nižší latenci, než přístup přes FSB a severní můstek čipové sady. To ocení nejen desktopoví uživatelé, ale hlavně uživatelé vícepaticových serverů. Zde navíc přidání každého procesoru zvýší propustnost, protože každý procesor má vlastní paměťový prostor.
Z této architektury plyne také viditelně odlišné uspořádání základních desek - operační paměť byla dříve seskupena pohromadě, u tohoto uspořádání jsou jasně vidět dvě paměťová hnízda, každé pro jeden procesor.
QPI je vysokorychlostí sériové propojení, skládající se ze dvou 20-bitových spojů (jeden pro každý směr). Z těch je 16 vyhrazeno pro data, zbývající 4 pro detekci chyb a řízení přenosu. To dává propustnost 12.8GB/s v každém směru. Nejrychlejší verze sběrnice FSB, operující na 1600MHz, měla teoreticky také 12.8GB/s, jenže v obou směrech dohromady. Navíc, většina běžných dvoupaticových serverů stejně používala nižší rychlosti 1066 nebo 1333 MHz. Po této sběrnici šel navíc jak provoz k paměti, tak k periferiím. Nyní máme celou tuto propustnost k dispozici pouze pro periferie - paměti jsou přece obsluhovány řadičem v procesoru. Navíc, spoj QPI je jeden z prvků stavebnice a tak může návrhář použít jeden (jako má Core i7), ale také čtyři tyto spoje pro vzájemnou komunikaci procesorů a komunikaci s periferiemi.
Technologie HyperThreading se poprvé objevila u procesorů Pentium 4. U této mikroarchitektury, které měla extrémně dlouhé dekódovací potrubí (pipeline) byla cestou, jak využít nezaměstnané výpočetní jednotky v době, kdy by se jinak čekalo například na dodávku dat z hlavní paměti. Ačkoliv je princip jednoduchý, jeho verifikace a validace je velmi složitá a proto byla tato technologie u architektury Core vynechána - už tak se jednalo o velmi hlubokou změnu, nebylo žádoucí si cíl ještě dále komplikovat.
V moderních procesorech instrukce prochází mnoha stupni - dekódování, načtení operandů, výpočet (celočíselný nebo plovoucí čárka) a uložení výsledků. O vykonání jednotlivých činností se starají exekuční jednotky, kterých je celá řada. Jedná-li se například o celočíselnou operaci, jednotka plovoucí čárky zahálí. Nápad ve své jednoduchosti geniální byl zdvojit vše, co udržuje stav procesoru - registry, instrukční čítač atd. - a tyto zdvojené sady jdou "cvaknutím vypínače" v jednom taktu hodin přepnout. Tak se jeden procesor začne chovat jako dva logické procesory. Nárůst výkonu sice není takový, jako u skutečného druhého jádra, ale i tak udávaných 30% výkonu navíc za 5% plochy čipu navíc stojí. Díky tomu mají dvě patice se čtyřjádrovými procesory celkem 16 logických procesorů:

Už jsme si zvykli, že s každou novou generací přichází rozšíření o nové instrukce, reflektující na vývoj toho, co je zrovna aktuální (multimédia...) a pomáhající tam, kde implementace v křemíku představuje výrazný přínos oproti řešení programovému. V této generaci přibyly instrukce pro spočítání nenulových bitů v registru (podle Intelu představuje výrazný přínos při rozpoznávání hlasu, sekvencování DNA a podobných činnostech) a instrukce pro výpočet CRC32, zabezpečovacího polynomu, naprosto všeobecně používaného ve výpočetní technice pro ověření správnosti přenosu všude od čtení dat z pevného disku po přenosy po síti.
Řízení spotřeby byl při návrhu čipu věnován celý milion tranzistorů, už z této skutečnosti je zřejmé, jaká péče mu byla věnována. Nepoužívané jádro má prakticky nulovou spotřebu. Paměti cache L1 a L2 byly překonstruovány z 6-tranzistorové buňky na 8-tranzistorovou, přes větší počet tranzistorů právě kvůli tomu, aby v neaktivním stavu držely informaci a nemusely být obnovovány (což stojí energii). Za zmínku také stojí tzv. režim Turbo Boost, pokud je provozována aplikace, která není optimalizována pro více jader a několik jader zahálí, systém řízení spotřeby je zastaví (takže nespotřebovávají prakticky nic) a to aktivní jádro, které pracuje, pak může být mírně "přetaktováno", protože tepelná obálka celého čipu zůstane dodržena. Jednotka přetaktování jádra je 133 MHz a u každého modelu procesoru je udáno, o kolik jednotek povoluje přetaktování: Označení např. 2/2/3/3 udává počet jednotek přetaktování, jsou-li aktivní 4, 3, dvě nebo jedno jádro. V úvahu se bere jak okamžitá teplota procesoru, tak nastavená hodnota maximální spotřeby (což je mimochodem další novinka procesorů Nehalem neboli Xeon řady 5500). Tak například procesor o nominální frekvenci 2.80 GHz s udaným turbo režimem 2/2/3/3 může jít na 3.06GHz při třech nebo čtyřech jádrech aktivních, a dokonce až na 3.20 GHz, jsou-li aktivní nejvýše dvě jádra.
Tato funkcionalita ovšem není zadarmo: Procesory jsou rozděleny do kategorií Basic, Standard a Advanced. U nejnižší řady Basic není funkce Turbo Boost podporována vůbec. U střední třídy Standard je nastavení 1/1/2/2, a u nejvyšší řady Advanced je 2/2/3/3. Mezi jednotlivými řadami je rozdílů více, přehledně jhe shrnuje následující tabulka:
| Řada | HyperThreading | Cache | Turbo | QPI | DDR3 |
| Advanced | Ano | 8M | 2/2/3/3 | 6.4GT/s | 1333 |
| Standard | Ano | 8M | 1/1/2/2 |
5.86GT/s |
800 |
| Basic | Ne | 4M | nemá | 4.8 GT/s | 800 |
Přihlaste se k odběru novinek:
Vybrané články
Novinky
Symantec doporučuje nepoužívat pcAnywhere