Vyznejte se v procesoru – velký přehled technologií

Diskuze čtenářů k článku

snake  |  21. 05. 2009 04:59  |  Microsoft Windows XP IE 6.0

U hyperthreadingu mne pobavila formulace "může i nepatrně snížit". Ve chvíli, kdy mám zároveň několik jader, a na nich možnost nechat běžet několik vláken, záleží zatraceně hodně na OS a aplikaci. Mějme řekněme aplikaci optimalizovanou pro dvě jádra. Na dvou jádrech běží lineárně rychleji než na jednom, čili řádově dvakrát. Možná i o něco rychleji, tzv. superlineární urychlení (zejména kvůli tomu, že není nutné provádět tolik context switchů apod.). Dáme tuhle aplikaci na procesor se dvěma jádry, dostaneme dvojnásobný výkon oproti jádru jedinému. Zapneme navíc na tomto dvoujádrovém CPU hyperthreading, a bože, co se to stalo?! Pitomý OS (zde widle) začne využívat jako dvě jádra první a druhé virtuální, čili vytěžuje hyperthreadingem jen první skutečné jádro, druhé zůstává v nečinnosti. A výkon? Ekvivalentní jednojádrovému CPU s hyperthreadingem. A ten může být za určitých okolností stejně výkonný jako CPU se stejnými parametry, ovšem bez hyperthreadingu. Jinými slovy zapnutí hyperthreadingu může za určitých okolností - v praxi se skutečně objevujících - znamenat dvojnásobný sešup ve výkonu. A to bych určitě neoznačil za nepatrné snížení výkonu.
Druhá poznámka je ohledně vlivu frekvence na spotřebu. V článku se píše kvadraticky, já zatím vždy četl, že nárůst je lineární. Protože spotřeba CPU se dá rozdělit na dvě části - na tu nezávislou na frekvenci (tuším current leakage, či jak se tomu...) a na tu, která je na frekvenci závislá. A chápu-li dobře, ta druhá znamená odpor při přepnutí tranzistoru z jednoho stavu do druhého. Energie, kterou musím vydat na proražení nějaké bariéry či čeho... Tranzistorů je stále stejné množství, přepíná se jich při zvyšování rychlosti stále stejný podíl z celkového počtu, a tak bych čekal, že vliv bude lineární, a nikoli kvadratický. Jediný faktor, který má vliv kvadratický, je, pokud vím, napětí. Protože napětím se zvedne i proud, a spotřeba je proud krát napětí...
Poslední poznámka by byla o důvodech nezvyšování frekvence: domnívám se, že teplo nehrálo jedinou roli, pokud vůbec tedy tu primární. Ale řekněme, že primární důvod byl skutečně ve vyzařovaném teple, nebyl to ovšem jistě důvod jediný. Ono by totiž na zdvojnásobení rychlosti zdvojnásobením pouhé frekvence bylo potřeba kromě samotného CPU zrychlit ještě vše okolo! Ale stačí vzít v úvahu jen paměť, a jsme namydlení: bylo by nutné nejen zdvojnásobit přenosovku, aby se CPU stačil krmit daty, ale zkrátit i přístupovou dobu. A přístupová doba RAM zůstává nějakých posledních 20 let plus mínus stejně velká (no dobře, zlepšila se dejme tomu 2x, snad 3x, ale víc ne). Samozřejmě, cache dělá opravdu hodně! Ale přeci jen, když se dnes čeká při přístupu do paměti několik set (!!) cyklů CPU, "přestává legrace". Mnohem šikovnější je nutit se do paralelismu. Buď hardwarově, tedy přidáváním dalších ALUs a FPUs na jediném jádře, mám tím na mysli prostě urychlení, které se dosáhne čistě hardwarovým zparalelizováním úlohy bez kooperace programátora (patří do toho mj. i ono out of order...). A nebo holt "softwarově". Tím mám na mysli to, že developer se aktivně snaží úlohu psát tak, aby mohla škálovat se zvyšujícím se počtem jader apod. Někde mezi je koncept SIMD typu MMX či SSE, programátor to sice musí aktivně využít, ale nic jej nenutí ke změně programátorského stylu, úloha může být stále klasická sériová. Takové databázové či webové servery ale SIMD moc nevyužijí, a přitom se vhodnou paralelizací dá dosáhnout téměř lineární nárůst výkonu s počtem jader k dispozici! Nejde to samozřejmě u všeho, ale u spousty věcí ano, a tak je nucení do paralelizace výhodnější cestou než zrychlování pomocí frekvence. Protože rychlejší RAMka v podstatě udělat nejde (bavíme-li se o klasické DRAM), zatímco přidat další ALU do jádra, zkomplexnit vyhodnocování out-of-order, či přidávat jádra, nebo rovnou celé procesory jde poměrně snadno, náklady rostou v podstatě jen lineárně s násobkem počtu původních dílů. Kdežto takové zdvojnásobení rychlosti RAM by stálo kolikrát... stokrát? tolik... Pozor, nemluvím o přenosové rychlosti, ta se skutečně dá zdvojnásobit celkem bez potíží, a taky je to - přiznejme si - to jediné, co se u DRAM aspoň trochu vedle kapacity vyvíjí. Přístupová doba zůstává ale desetiletí v podstatě stejná! místo DRAM by bylo nutné vzít SRAM či něco podobného, a cena nebude 2násobná, ale vyšší o 2 řády...
Howgh, nějak jsem se rozepsal...

Souhlasím  |  Nesouhlasím  |  Odpovědět
P.  |  21. 05. 2009 08:07  |  Microsoft Windows XP IE 8.0

Chtěl bych navázat otázkou, a to ohledně spotřeby. Je to sice mírně "offtopicovní", ale nedá mi to: chtěl bych upgradovat domáci file server a co se týče spotřeby a ceny u mě vyhrává Atom (VIA Eden je IMO nechutně drahá platforma). Jen se mi u Atomu zatím moc nelíbí spotřeba toho chipsetu (G45?).
Kdybych např. použil Celer DualCore (2 GHz), na jaký chipset se soustředit? Nebo mají všechny +/- stejnou spotřebu? O kolik by se to mohlo lišit vzhledem k tomu Atomu? Takový file server se stejně většinu doby fláká, takže by to chtělo nějaký speed step a vypínání periferií...
Něco jsem na webu semo-tamo našel (testy spotřeby chipsetů), ale nějaké větší a kvalitní srovnání určitě ne

Souhlasím  |  Nesouhlasím  |  Odpovědět
bender.rulezzz  |  21. 05. 2009 13:18  |  Microsoft Windows XP Firefox 3.5

jen jedna technická: nahrazení DRAM pomocí SRAM v procesoru není tak jendoduché neboť SRAM paměťová buňka je mnohem větší než DRAM (SRAM obsahuje 6tranzistorů, DRAM jeden) - znamenalo by to obrovský nárůst plochy procesoru (už nyní zabírá větší část plochy procesoru právě paměť).

Souhlasím  |  Nesouhlasím  |  Odpovědět
snake  |  22. 05. 2009 08:05  |  Microsoft Windows XP IE 6.0

Myslím, že takhle jednoduché to nebude. Kdyby šlo "jen" o šestinásobné zvětšení počtu tranzistorů, nejspíš by se to nějak dalo. Však ona ani buňka DRAM není z jediného tranzistoru, je tam tranzistor a kondenzátor. Plus samozřejmě nějaká ta ovládací logika, ale ta dělá už jen drobné. Odhaduji, že by SRAM zabírala 4x více místa, čili místo 4 GB dnes (pravda, sice draho, ale přeci jen) běžně dostupných modulů bychom měli 1 GB. Ale nikde nic!
Takže tipuji, že potíž bude ještě někde jinde. Však ony i L1 a L2 cache se výrazně odlišují přístupovou dobou, a to jsou obě, pokud vím, SRAM. Jen jsou to hodně speciální paměti, protože fungují asociativně, což je oproti běžné paměti zatracený rozdíl, a předpokládám, že část té náročnosti ve výrobě dostatečně rychlé cache bude právě v tom paralelním přístupu asociativní architektury. Něco mi ale napovídá, že i kdybych tu SRAM neudělal asociativní, stejně by mi z nějakého důvodu při zvětšování velikosti vzrůstala přístupová doba (což se u DRAM neděje)...

Souhlasím  |  Nesouhlasím  |  Odpovědět
V0cas  |  05. 06. 2009 17:03  |  Microsoft Windows Vista Firefox 3.0.10

SRAM neni sama o sobe asociativni, jedna se pouze o jiny typ pametove bunky, ktera nevyzaduje obnovovani a zaroven si zachovava informaci i po precteni. Technicky je to bistabilni klopny obvod.
Asociativita je dana tim ze SRAM pouzivame jako cache pamet a ta nejaky stupen asociativity potrebuje aby pracovala dostatecne efektivne.
V dnesni dobe nepotrebujeme vyrazne snizovat latenci RAM, pouze prenosovou rychlost. Kvuli snizeni latence pouzivame prave cache pameti, ktere dopad latence hlavni pameti eliminuji na minimun. Naopak propustnost pameti roste dlouhodobe pomerne slusne. Od dob sdram 133 cca 30ti nasobne (dnes maji DDR3 pameti i 1600MHz a zaroven mame trojkanal u core i7) Prenosova rychlost prave urcuje kapacitu kolik dat je procesor schopen zpracovat.

Souhlasím  |  Nesouhlasím  |  Odpovědět
V0cas  |  05. 06. 2009 16:51  |  Microsoft Windows Vista Firefox 3.0.10

L3, L2 a L1 v procesoru uz SRAM je, proto ma v porovnani s RAM tak malou kapacitu

Souhlasím  |  Nesouhlasím  |  Odpovědět
Smajd  |  21. 05. 2009 06:43  |  Unknown Mozilla 1.9.1

Opradu to znamená Pentium Rate? já mám dojem, že jen někdy v brzkých dobách, jistě ne v dobách Athlonu XP. Četl jsem cosi o Performance Rate - srovnání s výkonem tehdejšího Athlonu taktovaného na 1GHz. Možná se mýlím..

Souhlasím  |  Nesouhlasím  |  Odpovědět
21. 05. 2009 08:10 | Microsoft Windows XP IE 7.0

Bylo to oboje - první Athlony se porovnávaly s rychlostí sběrnice Pentia a bylo to Pentium Rate, a po změnách výrobní technologie u Pentií u IBM se pak vyšší modely AMD začaly srovnávat s referenčním Ahlonem, aby to dávalo smysl a přejmenovalo se to na Performans Rate, což platí dodnes.

Souhlasím  |  Nesouhlasím  |  Odpovědět
V0cas  |  21. 05. 2009 12:10  |  Microsoft Windows XP Firefox 3.0.10

to je nepresne. Pentium rate se pouzivalo v dobach AMD K5, tedy drahne let pred athlonem. S prichodem Athlonu XP se zacal pouzivat performace rate, ktery je odvozen prave od Athlonu.

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
25. 05. 2009 21:37 | Microsoft Windows Vista Firefox 3.0.10

Ano se to používalo (byť ne přímo v označení) i u K6 a K6-II, tedy hned před Athlonem.

Souhlasím  |  Nesouhlasím  |  Odpovědět
V0cas  |  05. 06. 2009 16:43  |  Microsoft Windows Vista Firefox 3.0.10

nechci slovickarit ale je to nejak takhle:
1996 - K5 - Pentium Rate se pouziva
1997 - K6 - PR se jiz nepouziva, K6 jsou oznaceny pouze frekvenci
1999 - Athlon - PR se stale nepouziva
2001 - Athlon XP - PR se pouziva ve smyslu "Performance Race", jako frekvence vykonem ekvivalentniho Athlona
Tam je proste 5 let kdy se PR nepouzivalo...

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
21. 05. 2009 08:11 | Microsoft Windows Vista Firefox 3.0.10

Původně to opravdu bylo Pentium Rate, později se AMD ze zcela pochopitelných důvodů rozhodlo předefinovat zkratku na Performance Rate (tuším odvozenou od výkonu původního Athlonu 1 GHz).

Souhlasím  |  Nesouhlasím  |  Odpovědět
21. 05. 2009 07:37 | Linux Mozilla 1.9.0.6

Mohlo by zive.cz publikovat v budoucnu podobný článek zaměřený na rodinu procesorů ARM? Domnívám se, že je to zajímavé téma, protože je prý pravděpodobná brzká expanze těchto procesorů ze segmentu "chytrých mobilních zařízení" do segmentu netbooků. Dosud se mi nepodařilo sehnat kvalitní pojednání o tomto tématu.

Souhlasím  |  Nesouhlasím  |  Odpovědět
Caleb  |  22. 05. 2009 16:53  |  Microsoft Windows XP Firefox 3.0.10

To tezko, protoze na ARMech nejdou spustit x86 aplikace. Takovy notebook by byl k nicemu, resp. bylo by to prerostle PDA. A navic, kdo by na tech linejch mrchach chtel delat? ARM je opravdu jen do nejakych embedded aplikaci.

Souhlasím  |  Nesouhlasím  |  Odpovědět
23. 05. 2009 19:23 | Linux Mozilla 1.9.0.6

A to je takový problém, aby výrobce/distributor provedl i kompilaci pro ARM?

Souhlasím  |  Nesouhlasím  |  Odpovědět
maxxx.cz  |  23. 05. 2009 21:07  |  Linux Opera 9.64

jak je můžete nazývat lýnými mrchami ještě když ani nejsou

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
21. 05. 2009 08:57 | Microsoft Windows XP Firefox 3.0.5

.. první L2 na čipu bylo Pentium Pro !!!
Dvě křemíkové destičky v jednom pouzdře. Jedna byla čip a druhá cache ...
A prvním skutečne one-chip řešením byl Celeron 333A !!!!
Tož kluci ... !!

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
21. 05. 2009 08:58 | Microsoft Windows XP Firefox 3.0.5

.. teda Celeron 300A .. od 333Mhz byly všechny už s cache ...

Souhlasím  |  Nesouhlasím  |  Odpovědět
Quasimodo  |  21. 05. 2009 11:17  |  Microsoft Windows XP Firefox 3.0.10

Mozna se pletu, pamet mi uz tak neslouzi, ale myslim, ze byl numericky koprocesor integrovany uz do 386DX a ne az na 486. Ze u i386 a i486 to DX a znamenalo kompletni variantu, tedy s integrovaou FPU a SX byla levnejsi varianta ke ktere se dalo pridat 387 na mainboard externe..

Souhlasím  |  Nesouhlasím  |  Odpovědět
V0cas  |  21. 05. 2009 12:14  |  Microsoft Windows XP Firefox 3.0.10

DX a SX varianta 386 se lisi pouze sirkou datove a adresni sbernice, tedy SX 16b ktera je kompatibilni se starsimi komponentami (zaroven pouze 24b adresova tedy max 16MB pamet) a DX je plnotucna 32b pro kterou ale bylo treba pouzivat nove (drazsi) okoli.
U 486 je ten rozdil prave koprocesor.

Souhlasím  |  Nesouhlasím  |  Odpovědět
snake  |  21. 05. 2009 12:18  |  Microsoft Windows XP IE 6.0

Pleteš se, SX a DX znamenalo u 386 něco jiného než u 486. U 386 šlo o očesání šířky datové sběrnice, kdežto u 486 o FPU.
Více viz sekce SX (klíčové slovo "confusion") na
http://en.wikipedia.org/wiki/Intel_80386...

Souhlasím  |  Nesouhlasím  |  Odpovědět
mart22  |  21. 05. 2009 15:27  |  Microsoft Windows XP Opera 9.63

Je to poloměr tranzistoru, jejich rozteč atd?

Souhlasím  |  Nesouhlasím  |  Odpovědět
P.  |  22. 05. 2009 08:22  |  Microsoft Windows XP IE 8.0

IMO je to nejmenší možná šířka vodivé cesty (vodiče), která se dá danou technologií vytvořit. Opravte mě někdo, jestli se mýlím.

Souhlasím  |  Nesouhlasím  |  Odpovědět
bender.rulezzz  |  22. 05. 2009 15:05  |  Microsoft Windows XP Firefox 3.5

45nm je minimální délka kanálu MOS tranzistoru, nikoliv minimální šířka vodivého spoje.

Souhlasím  |  Nesouhlasím  |  Odpovědět
vransen  |  23. 05. 2009 22:06  |  Microsoft Windows XP IE 8.0

Číslo 45 nm není ani nejmenší možná šířka spoje, ani délka kanálu tranzistoru. Je to nejmenší rozměr, který je ještě možné zhotovit fotolitografickou metodou.

Souhlasím  |  Nesouhlasím  |  Odpovědět
bender.rulezzz  |  25. 05. 2009 12:47  |  Microsoft Windows XP Firefox 3.5

Nemáte pravdu, technologie se pojmenovávají opravdu podle rozměru kanálu MOS tranzistoru, přesněji podle nejmenší délky kanálu MOS tranzistoru, který jde touto příslušnou technologií vyrobit! Co se týká fotolitografického procesu, tak už nyní se používají upravené procesy, které se "klasické" fotolitografii pouze podobají.

Souhlasím  |  Nesouhlasím  |  Odpovědět
vransen  |  25. 05. 2009 13:36  |  Microsoft Windows XP IE 8.0

Tak nemáme pravdu ani jeden. Podle http://en.wikipedia.org/wiki/45_nanometer... je to "the average half-pitch of a memory cell manufactured". Bohužel překladem si nejsem jist. Nepodařilo se mi ani najít, jestli je to nejmenší možný výrobní rozměr použité technologie.
Co se technologie týče, je to ale pořád litografie.

Souhlasím  |  Nesouhlasím  |  Odpovědět
bender.rulezzz  |  25. 05. 2009 15:32  |  Microsoft Windows XP Firefox 3.5

Názvy CMOS technologií skutečně dříve udávaly minimální dosažitelnou délku MOS tranzistoru. Bývala to délka kanálu, která se objevovala na maskách. Jakmile se čip vyrobí a změří se skutečná délka kanálu vyrobeného MOS tranzistoru, zjistíme, že tato délka je menší (vliv výrobního procesu, tj. nepřesnost fotolitografie, poddifundování apod). Proto se píše, že v 45nm technologii má tranzistor skutečnou délku kanálu okolo 35nm. Mimochodem, tohoto se dokonce využilo i v marketinku u 130nm technologie, což byl původní název technologie. Jedna z konkurenčních firem potom z marketinkových důvodů udávala, že vyrábí 120nm technologií a nikoliv běžně udávaných 130nm. Zpět k 45nm... V současnosti už rozměry přesně neodpovídají názvu technologie (v 65nm je kreslená délka kanálu 60nm, skutečně vyrobená se udává kolem 50nm), ale vždy je název vztažen k ploše základní součástky což je MOS tranzistor. Každá další technologická generace je odvozena z předešlé tak, že plocha má být poloviční - což znamená, že vezmeme-li pouze jeden rozměr (např.délku kanálu) bude nová délka Lnova=Lstara*0,707 (odmocnina za 2) (65*0,7->45). K délce kanálu se vztahuje, protože nejrychleší (->pracovní kmitočet logiky) je MOS s minimální délkou kanálu a dnes se "honíme" právě za rychlostí. Jak jsem psal, "kreslená" délka kanálu nemusí nutně přesně odpovídat rozměru z názvu (protože samozřejmě jsou důležité i výrobní faktory - ty v zásadě mohou korigovat skuteně použitý rozměr), ale princip odvození nových generací technologie zůstává stejný a odvozuje se z hodnot spočítaných (pro zamezení zmatku, 130-:>90->65->45->32... ).
Co se týká litografie, je to opravdu stále litografie

Souhlasím  |  Nesouhlasím  |  Odpovědět
mart22  |  21. 05. 2009 15:29  |  Microsoft Windows XP Opera 9.63

sem našel na netu

Souhlasím  |  Nesouhlasím  |  Odpovědět
21. 05. 2009 20:52 | Microsoft Windows XP Firefox 3.0.10

mooreuv zakon byval 18 mesiacov
teraz je to 24

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
22. 05. 2009 10:16 | Microsoft Windows XP Firefox 3.0.5

mooreuv zakon není žádný zákon ... Moore jen řekl co viděli všichni v té době, ale protože to byl říďa Intelu tak u toho udělali zákon a všichni to jako tupé ovce omílají dokola a dělají z praticky bezvýznamného potřehu jedno z nějleštěnějších hoven na světě a z Moora tím páde pohoboha .....
.. chce se mi grcat ...

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
25. 05. 2009 21:44 | Microsoft Windows Vista Firefox 3.0.10

ML je možná opravdu leštěné lejno (ale spíš velmi vtipný postřeh), ale Moore rozhodně není polobůh kvůli němu (nebo kvůli tomu, že šéfoval v Intelu) - ostatně "Moorův zákon" publikoval pár let předtím, než Intel spoluzaložil a asi tak deset let před tím, než se stal jeho prezidentem. Moore je polobůh spíš kvůli svým pracem u Shockleyho a později na prvních čipech Intelu.

Souhlasím  |  Nesouhlasím  |  Odpovědět
mkobylan  |  22. 05. 2009 09:41  |  Microsoft Windows XP Opera 9.63

Predpokladam, ze to maju vyrobcovia procesorov zvladnute, aby vacsinu rozhodovania "out of order execution" dali do kompilatora. Ale podla odoberanej energie to velmi nevyzera.

Souhlasím  |  Nesouhlasím  |  Odpovědět
mrjan  |  22. 05. 2009 11:36  |  Microsoft Windows XP IE 8.0

Pěkné shrnutí historie, pomohlo mi urovnat si některé pojmy.Děkuji

Souhlasím  |  Nesouhlasím  |  Odpovědět
Zasílat názory e-mailem: Zasílat názory Můj názor

Aktuální číslo časopisu Computer

Speciál o přechodu na DVB-T2

Velký test herních myší

Super fotky i z levného mobilu

Jak snadno upravit PDF