Lži o mikroprocesorech

Pozor, trošku techničtější článek, který neobsahuje jednoduché pravdy o AMD a Intelu.

Při svém bloumání po elektrostránkách jsem narazil na hezký článek Ten lies about microprocessors od Jima Turleyho. Dovolím si jej trochu přiblížit pro ty, co neumí / nechtějí / nemohou číst originál.

Na úvod ještě zdůrazním, že "mikroprocesor" je mnohem širší pojem než jen "to co máte ve svém PC/Macu". On to autor zmiňuje, ale až ve druhém bodu, a dle mých zkušeností tak daleko žádný horlivý diskutér nečte.

Žádné obvody nevyvolávají tolik vášní jako mikroprocesory. Nikdo se nedohaduje o parametrech DRAM nebo o parametrech dekodérů, píše Jim. Zato o procesorech koluje spousta legend a mýtů.

První mýtus je ten o malém výběru. Tipněte si, z kolika různých dvaatřicetibitových mikroprocesorů si můžete vybrat, když navrhujete elektronické zařízení? Deset? Dvacet? Ve skutečnosti je v současnosti na trhu více než sto různých 32bitových mikroprocesorů, nepočítaje v to odlišné varianty pouzder nebo různé modely dle rychlosti. Tucty firem vyrábějí 32bitové mikroprocesory, patřící do více než patnácti různých architektur. Přidejte několik set šestnáctibitových procesorů a několik set osmibitových...

Druhý mýtus: Intel vládne světu procesorů. Jak Jim podotýká, když řeknete procesor, lidé si představí Pentium. Noviny se neskutečně blamují, když píší o tom, že Intel má 95% podíl na trhu mikroprocesorů. Intel dominuje trhu mikroprocesorů pro osobní počítače, ale PC jsou jen malým kouskem trhu s mikroprocesory, zhruba 2%. Zbývajících 98% tvoří embedded procesory (zabudované v nějakém zařízení: MP3 přehrávače, navigace, mobilní telefony, ledničky, pračky, mikrovlnky, auta, ...) Ve skutečnosti Intel nepatří ani do Top Five výrobců mikroprocesorů. Dokonce i když omezíme srovnávání pouze na 32bitové mikroprocesory, bude Intel až někde dole. Jen výrobci ARM procesorů prodají třikrát víc procesorů než Intel Pentií.

Třetí mýtus: Na instrukční sadě nezáleží. Idea mnoha aplikačních programátorů. Ve skutečnosti na instrukční sadě záleží, a to podstatně. Od instrukční sady se odvíjí to, jak efektivní bude překladač vyššího jazyka. Autor navíc jako zajímavost uvádí nepředvídatelnost násobení – každý procesor totiž násobí jinak a maximální a minimální doba násobení se může (u jednoho procesoru) rapidně lišit, např. u ARM7 trvá násobení, podle grafu v článku, od 1 do 16 cyklů, v závislosti na tom JAKÉ číslo se násobí JAKÝM. Někdy pouhé prohození operandů, píše Jim, může zkrátit dobu násobení na polovinu. Ale nic z toho není ve vyšších jazycích vidět a jen málo překladačů takové věci respektuje.

Čtvrtý mýtus: RISC je lepší než CISC. Pamatuju se, že se o RISC procesorech hovoří od 80. let a vedou se vášnivé spory a diskuse. CISC nabízejí "hustší" kód a mají lepší vývojářské nástroje, RISC mohou pracovat s vysokými frekvencemi a mají lepší marketing. Vyberte si. :)

Pátý mýtus: Přicházejí mikroprocesory implementující Javu. Ano, stejně jako Vánoce. Ve skutečnosti Vánoce jsou o něco blíž, protože budou ještě letos. Java procesory jsou spíš podobné Ježíškovi než Vánocům: Hezká pohádka pro mladé inženýry, kteří ještě nejsou dost staří na to, aby tomu rozuměli.

Na Javě je spousta věcí zaznamenáníhodných, a většina z nich má co do činění s marketingem. Ovšem na Javě je pozornosti hodné i to, jak tvrdošíjně se vzpírá hardwarové implementaci. Řada společností se pokoušela vytvořit Java mikroprocesor, a všechny pokusy v nějakém stadiu selhaly. Tento trend stále pokračuje. A není celá pointa Javy v tom, že je na hardware nezávislá? (Tady jsem si neodpustil víceméně přesný překlad, protože se mi velmi líbil ironický tón původního článku – pozn.aut.)

Java nebyla navrhována k tomu, aby běžela na reálném hardware, a je to na ní vidět. Na garbage collector, vlákna, zásobníkovou orientaci a objektovou správu potřebuje JVM zhruba megabajt kódu k tomu, aby to dokázal přeložit do něčeho, čemu se nebudou současné nejvýkonnější procesory bránit. Desetiletí vývoje počítačů a výzkumu ve firmách a na univerzitách po celém světě nedokázaly vyprodukovat nic, co by vypadalo jako Java Machine. To není náhoda.

Existují HW akcelerátory Javy, které provádějí 30-60% bytekódu přímo na HW úrovni. Podle "pravidla 80/20" tyto čipy dokáží zrychlit průměrný běh programů v Javě, ale to stále není "Java Machine".

Po letech neustálého vývoje a zdokonalování jsou Java-based procesory na úrovni "60% bytekódu v HW, zbytek SW". Sám Sun zrušil vývoj procesoru pro Javu. Implementace zbývajících bytekódů hardwarem by nepřineslo rozumný zisk.

Šestý mýtus: Dhrystone MIPS je užitečný benchmark. MIPS podle autora článku znamená spíš "Nesmyslný Ukazatel Výkonu Pro Obchodníky" (Meaningless Indicator of Performance for Salesmen). Různé procesory mají různé instrukce, takže jejich počítání a porovnávání nemá smysl. MIPS je většinou odvozen od čehosi, co se nazývá Dhrystone. Dhrystone benchmark byl napsán před cirka 30 lety v jazyce PL/I a sloužil ke srovnávání VAX 11/780 s jinými sálovými počítači. Zabíral asi 4kB kódu, který se hravě vejde do cache a nedělá nic užitečného. Protože je maličký (a přesto pro některé lidi velmi důležitý), stal se předmětem, řekněme, kreativní optimalizace. Existují překladače C, které mají volbu -dhrystone. Stačí ji použít, a rapidně vzroste výkon v tomto benchmarku. Dnešní "MIPS" hodnocení se počítá z Dhrystone tak, že je výsledek vydělen 1757, což je výsledek prvního VAXu v 70. letech. Takže měříme "VAX-ekvivalent" čtyřkilovým kouskem kódu, napsaným v PL/I a přepsaným do C, který byl speciálně upraven, aby běžel co nejrychleji, což ve výsledku dá číslo, které marketing napíše do propagačních materiálů a "omylem" za něj flákne ještě nulu. Tak k čemu to je?

Mýtus sedmý: Cena souvisí s výkonem. Ani náhodou.

Mýtus osmý: ARM mají nejnižší spotřebu. Málokterý procesor má v něčem velmi silnou reputaci, ale ARMu se to podařilo. Spousta lidí věří, že ARM procesory mají minimální spotřebu, že dokáží běžet na sluneční pohon nebo na energii z liščího ohonu a ebonitové tyče. Vypadá to, jako by stačil ARM procesor, dva citróny a kus měděného drátu k tomu, aby vzniklo PDA. Stejně jako spousta mýtů má i tento dávné kořeny v realitě, ale realita se změnila a mýtus nabobtnal. Na počátku 90. let byly ARM procesory jedny z prvních, které byly použity v embedded aplikacích. V porovnání s tehdejšími procesory 68030, 29000 a 486DX měly ARM6 výrazně nižší spotřebu a "míň topily". Důvod byl prostý: ARM neměly FPU, neměly cache, žádné výrazné budiče, žádnou externí sběrnici a minimální instrukční sadu. Dnes je spousta 32bitových procesorů pro embedded, spousta z nich je menší než ARM, spousta z nich má menší spotřebu než ARM, ale pověst stále vydržela, i když ve skutečnosti jsou dnešní ARM procesory zhruba uprostřed žebříčku.

Devátý mýtus: Druhý výrobce stejného čipu. Hardwaroví návrháři často nesmějí použít součástku, která není dostupná od dvou či více výrobců. Což je dobré třeba u odporů, ale u procesorů je to nemožné. Třeba procesory MIPS vyrábí spousta výrobců: NEC, PMC-Sierra, IDT, Intrinsity a další, ale jejich modely nejsou vzájemně zaměnitelné. Mají stejnou instrukční sadu, ale jejich sběrnice, vývody, periferie, rychlosti a pouzdra se liší. Programátorům to moc nevadí, ti mohou většinu kódu použít, ale HW návrhář musí udělat víceméně nový systém.

Byly doby, kdy Motorola a Hitachi vyráběli stejné 68k procesory, DMA řadiče a další čipy. Intel a AMD procesory se daly zaměnit. Spousta low-end procesorů a součástek, např. z rodiny 8051 nebo 6805, byla také vyráběna dvěma či více výrobci. Konkurenční boj s podobnými věcmi zametl. Dnes je každý procesor unikátní, ale instrukční sada ne.

Desátý mýtus: Velký procesorový otřes. Sto různých 32bitových procesorů, to je z hlediska trhu neefektivní. Musí přijít otřes, někdo vyhraje a ostatní budou poraženi. Tak schválně, kdo půjde první ke zdi, až propukne Procesorová revoluce?

Pravděpodobně nikdo. Počet procesorů se stále zvyšuje, místo toho aby klesal. Ty stovky "okrajových" čipů mají své věrné zákazníky, kteří nic jiného používat nechtějí. Tyhle čipy mají své opodstatnění a přěžívají z nějakého důvodu. A počet důvodů stoupá. Vznikají stále nové MP3 přehrávače, videokamery, automobily, hračky a další věci – a každá z nich chce nový a trošku jiný procesor. A dokud budou vývojáři vymýšlet nová zařízení, budou vznikat i nové procesory.

Dne 2.05.2008

Twittni

Přidej do: asdf.sk StumbleUpon Toolbar Stumble It!

Komentáře

[1] (Tonda - Mail - WWW) 02.05.2008, 17:02:24 [X] [D]
Druhý mýtus je velká pravda. Psal jsem o tom v maturitní slohovce. :) Nicméně Intel taky přece nedělá jenom x86 procesory. Jejich brouci se dají najít na mnohých jiných obvodových deskách.

Šestý mýtus mě zničil. :D (Přesto že Dhrystone MIPS vůbe neznám.)

[2] (brum brum ) 02.05.2008, 17:56:52 [X] [D]
ňuch ňuch, rád jsem si počet. přestože jsem jen analogový konstruktér a v digi světě jsem zamrznul někde u karnaughových map.

[3] (Radek Hulán - Mail - WWW) 02.05.2008, 18:42:04 [X] [D]
[1] počet na kusy nikoho nezajímá, podstatný je obrat. 10 ARM procesorů po padesáti centech, versus 1 Intel po a kdo je king?

[4] (Radek Hulán - Mail - WWW) 02.05.2008, 18:43:02 [X] [D]
hm, vypadá to, že systém žere USD 50 "50 dolarů".. anebo jsem to na tom pitomém notebooku nenapsal?

[5] (Radek Hulán - Mail - WWW) 02.05.2008, 18:43:25 [X] [D]
tak to fakt žere :-) Já jsem ok!

[6] (Tonda - Mail - WWW) 02.05.2008, 19:22:32 [X] [D]
[5] Radku, nepochybuj o sobě proboha !

[7] (Arthur Dent [openID] - Mail - WWW) 02.05.2008, 20:09:03 [X] [D]
[3] Radku, netušil jsem, že ARM920T procesor Samsung v tvém HTC stojí 50 centů... Nepleteš si trochu pojmy s dojmy a ARM procesor s osmibitovým jednočipem? ;)

Když zůstaneme u těch ARM920T procesorů, které jsou víceméně standardem pro přenosná zařízení založená na Windows Mobile, tak jejich cena se pohybuje např. u Cirrus Logic od 21 do 45 dolarů... Konkrétně ceník Samsungu jsem nenašel, ale bude to plusmínus podobné.

Mimochodem, řekl bych že počet na kusy zajímá spoustu lidí. Minimálně ty týpky, co rozhodují o tom, pro jakou platformu udělají překladače a systémy. ;)

PS: http://www.embedded.com...1217S0039

Zooming in on that little 2% sliver, the balance gets even more lopsided. As Figure 3 shows, 8-bit chips are the best-selling type of processor, by far. Those little ol' 8051s and 6805s are flying off the shelves at the rate of more than 3 billion new chips per year. But they're not very expensive, so even though they're more than half of the units, they're less than 15% of the fiscal tonnage.

At the opposite end of the scale are-big surprise-32-bit microprocessors. This category includes PC processors like Pentium 4 and Athlon, of course, but also dozens of embedded processors such as PowerPC, 68k, MIPS, and ARM chips. In fact, most (98% or so) 32-bit processors are used in embedded systems, not PCs. Embedded 32-bit chips have outsold PC processors every year by a wide margin. ARM-based chips alone do about triple the volume that Intel and AMD peddle to PC makers.

Na druhou stranu:

Processors are only 2% of all semiconductors, and PC processors are only 2% of all processors. But processor chips generate about 30% of all the money, and PC processors are 50% of that. So 0.04% of the parts haul in 15% of the cash! That's two orders of magnitude and a factor of four difference. That's some serious leverage. It's as if Lotus (the car company) made more money than Toyota.

Stated another way, Pentium rakes in 15% of all the money made from every type of semiconductor from every company everywhere in the world.

[4][5] Žere znak dolaru? Divný... Proč? Přepošlu Hekko bugreport, díky. :)

[8] (Radek Hulán - Mail - WWW) 02.05.2008, 22:47:48 [X] [D]
[7] no vidíš, jen jsi potvrdil moje slova :-)

"Procesory jsou jen 2% z polovodičů, a PC procesory jsou jen 2% ze všech CPU, ale přesto CPU jako takové generují 30% všech tržeb, a z toho procesory pro PC polovinu"

0.04% kusů dělá 15% tržeb = (především) Intel a AMD

[9] (Arthur Dent [openID] - Mail - WWW) 03.05.2008, 00:10:56 [X] [D]
[8] Nikoli, jsem dalek toho, abych potvrzoval tvá slova, když jsou mimo probíranou věc... ;) Ty tvrdíš, že "obrat rozhoduje", což je sice hezký, ale coby argument naprosto mimo, protože o obratu nepadlo ani slovo, řeč byla o "podílu na trhu" a bylo explicitně řečeno, že jde o počet prodaných kusů. I kdybys nakrásně stokrát tvrdil, že v penězích je to jinak... Člověk s tvým IQ přeci pochopí, že když je řeč o počtu kusů, tak je řeč o počtu kusů, a je nesmysl pokřikovat "Intel rocks, protože vydělává nejvíc!" Je to tak nesmyslné jako křičet "Já mám Linux a jsem v pohodě", když je řeč o rozšířenosti operačních systémů.

I kdyby byla řeč o nejčastější barvě procesorových pouzder, tak je to z 98% "černá" - a je jedno, že ty s kovovým lesklým pouzdrem jsou dražší, protože cena tu není diskutovaný ukazatel.

Nebo jsi tím myslel, že potvrzuji tvá slova o padesáti centech za ARM? Nebo to, že Intel je king? Blázníš? To jsou akorát fanouškovské výkřiky, to není jakéhokoli potvrzování vůbec hodné. ;)

Jediné co "potvrzuji" je to, že Intel má největší podíl na obratu v tomhle segmentu. To ti rád potvrdím, i když o obrat nešlo ani autorovi, ani mně, ani komentátorovi ad [1], jediný kdo o něm diskutoval jsi byl ty. ;)

[10] (Radek Hulán - Mail - WWW) 03.05.2008, 01:45:08 [X] [D]
*Druhý mýtus: Intel vládne světu procesorů. *

Na toto jsem reagoval. Ten "mýtus" je totiž pravdivý. Fakt, že 0.04% kusů udělá 15% obratu znamená, že opravdu vládne (nehledě na to, že nedělá jen PC procesory, ale třeba i ony ARM procesory, speciální procesory do RAID řadičů, Atom low-power procesory, procesory do síťových karet, atd.).

Ukaž mi jiného výrobce *polovodičů* s tržní kapitalizací skoro 140 miliard USD:
http://finance.yahoo.com...q?s=INTC

Třeba Motorola dělá i hromadu jiných věcí než polovodiče, a její tržní kapitalizace je jen 20 miliard USD:
http://finance.yahoo.com/q?s=MOT


IDT má tržní kapitalizaci 0.3 miliard USD..

[11] (Richard - Mail ) 03.05.2008, 05:54:17 [X] [D]
Intel svou divizi vyrabejici XScale aplikacni procesory (ARM-based CPU) loni (predloni?) prodal Marvellu za 600 megadolacu. To jenom tak mezi nami... ;-)

Ad RISC vs. CISC: Tady vyhrava kombinace - RISC interne, navenek CISC. Frekvence nelze neustale zvysovovat a dnesni CPUcka uz zvladaji i CISC instrukce zpracovat za stejnou dobu jako RISC. Viz vsechny ty SSEx apod.

[12] (Arthur Dent [openID] - Mail - WWW) 03.05.2008, 11:13:57 [X] [D]
[10] "Vládnout" a "vydělávat" je trošku rozdíl. Na trhu s oblečením vydělávají nejvíc luxusní značky, ale vládnou mu čínské výrobky. Jako tady: Jakmile zvedneš hlavu od PC, tak budeš Intel těžko hledat.

Vem si svůj telefon, tiskárnu, HW router, monitor, mikrovlnku, MP3 přehrávač, fotoaparát a videokameru, rozdělej je a kolukni se, jaký je v nich procesor, to všechno je "procesorový trh". Kolik výrobců dělá tyhle věci? A kolik z nich volí Intel procesory? Kdyby 51%, tak uznám, že Intel dominuje procesorovému trhu. Ale ono to bude tak okolo 10%, a to jen díky Intel 8051 osmibitům. ;) Ve spotřební elektronice, což je trh stoprocentně několikanásobně větší než PC, se Intelské procesory nijak výrazně neprosadily. Ne, Intel NEVLÁDNE trhu procesorů - z deseti výrobků s procesorem najdeš jejich procesor tak v jednom, tomu opravdu neříkám "dominance". ;)

[13] (mike ) 05.05.2008, 22:19:37 [X] [D]
[12] I v tom PC bude mit mozna Intel min procesoru, nez ostatni :)

[14] (Meloun - WWW) 28.05.2008, 17:26:21 [X] [D]
k tomu zastoupeni procesoru na trhu sem vystrachal jeden docela zajimavy obrazek..
http://meloun.esportuj.cz...esorech