211service.com
Softwarový čip
Co je na CEO Transmety Dave Ditzelovi, že mu chcete věřit? Možná je to tím, jak bezostyšně používá slova jako cool a elegantní. Možná je to proto, že měl tu drzost vybudovat svou začínající čipovou společnost v dohledu centrály Intelu. Možná je to proto, že nikdy nedokončí větu, takže je tak nadšený z Crusoe, značky mikroprocesorů jeho společnosti. Od loňského ledna, kdy byl v plamenech fanfár oznámen Crusoe, až do poloviny srpna, kdy společnost podala návrh na vstup na burzu, se Ditzel nechal chraplavým tlačením čipu Crusoe. Ať už před 200 inženýry nebo jediným reportérem, jeho zpráva byla neochvějná: Crusoe – čip kompatibilní s Intelem s desetinovými požadavky na napájení Pentia III – navždy změní svět výpočetní techniky. Crusoe má nízkou spotřebu, je kompatibilní a má vysoký výkon, řekl v jednom ze série rozhovorů, které se konaly před srpnovým podáním. To je naše mantra.
Letos v létě se společnost a Ditzel odmlčeli na klidné období, které následuje po každé první veřejné nabídce. Ale tou dobou už Crusoeova zpráva začala žít svým vlastním životem: Od dob Apple iMacu nebyl v Silicon Valley takový povyk jako ten, který Crusoe vynesl na břeh. Není žádným překvapením, že zasvěcenci z Valley Upside a Red Herring vedli loni na jaře Transmetu jako své titulní příběhy, ale než začalo období klidu, Ditzel byl také citován v Time, USA Today a v hordě dalších spotřebitelských publikací. Snahy Transmety o propagaci se částečně přiživily na tom, že společnost najala linuxového autora Linuxu a guru open source softwaru Linuse Torvaldse. Torvalds byl součástí softwarového designérského týmu ve společnosti Transmeta a v poslední době pracoval na verzi Linuxu, která doplní Crusoeovu aplikaci na explodujícím trhu mobilních zařízení.
Tento příběh byl součástí našeho vydání z listopadu 2000
- Viz zbytek čísla
- předplatit
Samotné IPO je zarputilý dokument, který odhaluje jen málo z budoucích plánů designu Transmety, a místo toho je plný varování o tom, co by se mohlo pokazit na cestě Transmety k ziskovosti. Ve skutečnosti v době psaní tohoto článku nebyl ani jeden produkt Crusoe odeslán ve značném objemu. Společnost ztratila 41 milionů $ v roce 1999 a dalších 43 milionů $ v prvních šesti měsících roku 2000; prospekt jasně uvádí, že investoři by v blízké budoucnosti neměli očekávat ziskovost.
Bylo by však obtížné najít startup, který začal příznivěji nebo s lepší sestavou prvních zákazníků. Loni v květnu America Online a Gateway prohlásily, že Crusoe bude napájet novou řadu domácích spotřebičů, které budou mít bezdrátový přístup k síti. IBM, Hitachi, NEC a Fujitsu následovaly v červnu tohoto příkladu a oznámily notebooky na bázi Crusoe, které poběží celý den na běžné baterie. Sony následovalo v srpnu oznámením, že Crusoe bude pohánět budoucí verzi své řady notebooků Vaio PictureBook. Není to špatné pro čipovou společnost bez výrobního závodu a bez záznamů – a jejímž hlavním aktivem je, jak říká Ditzel, vize lepšího způsobu, jak vytvářet mikroprocesory.
Od nynějška bude přístup Transmeta nejchytřejší, nejrychlejší, nejlevnější, nejspolehlivější a nejflexibilnější technologií, která vyřeší prakticky jakýkoli problém související s počítačem, říká John Wharton, konzultant pro návrh mikroprocesorů, profesor ze Stanfordu a bývalý konstruktér společnosti Intel. Před padesáti lety byly nejsofistikovanější systémy stavěny pomocí elektronek. Před deseti lety byly nejmodernější komplexní, plně integrované megaprocesory jako Pentium a PowerPC. Transmetu vnímám jako další průlom v základní designové technologii.
Cesta, kterou Transmeta razí, povede k čipům, které spotřebují výrazně méně elektrické energie. To je dobrá zpráva pro každého, kdo používá přenosný počítač nebo jiná přenosná elektronická zařízení. Ale ještě hlouběji, Transmeta našla způsob, jak radikálně zlepšit schopnost návrhářů čipů provádět změny ve svých produktech, aniž by si odcizili obrovské knihovny softwaru, který byl napsán tak, aby běžel na konkrétním kusu hardwaru. V jistém smyslu odstranili otravného guvernéra z motoru pokroku při výrobě čipů.
Architektura osvobození
Přestože se o Transmetě jako o novém podniku hodně psalo, často se ztrácí samotná technologie. Crusoe je hybridní softwarový/hardwarový čip, jehož jediným účelem je provozovat software určený pro jiné mikroprocesory. Mnoho z toho, co Intel a jiní dosahují v křemíku, se Transmeta přesunula na software. Výhody? Za prvé, samotné čipy berou méně křemíku, takže je levnější na výrobu. Za druhé, jednodušší čip spotřebovává méně energie – což je u přenosných počítačů prvořadé. Ale možná nejdalekosáhlejším dopadem je to, že při výrobě Crusoe přišla Transmeta s inovativním přístupem bez mnoha problémů, které sužovaly design čipů v posledních dvou desetiletích.
Před Crusoe měl každý mikroprocesor, který byl kdy postaven, svou vlastní publikovanou instrukční sadu – výslovnou smlouvu, která vysvětluje, jak bude čip pracovat se softwarem. Instrukční sada slibuje, že pokud vývojáři napíší software, který dělá X, výsledná akce čipu bude Y-nyní a navždy.
Problém je v tom, že jakmile je navržen nový čip, je uzamčen v čase. S přibývajícím inventářem softwaru pro čip je téměř nemožné provést vylepšení sady instrukcí. Také vývoj softwaru je brzděn, protože každý nový program musí dodržovat zákony instrukční sady čipu, aby fungoval. Návrháři mikroprocesorů chtějí, aby čipy běžely rychleji, ale musí je také zajistit, aby běžely na stávajícím softwaru. Takže zvyšují rychlost pomocí triků, jako je opětovné řazení instrukcí do procesoru. Zavedení velkých změn je však téměř nemožné. Je to jako velmi špatný třínohý závod se softwarovými a hardwarovými inženýry svázanými v kyčli – nikdy nejsou schopni rychle přejít k osvojení nejmodernějších produktů, takže jsou závislí na volbě designu toho druhého a na volbách předchozích generace.
Sám Ditzel má vlastní zkušenost s obtížností zásadního vylepšení původního návrhu čipu. Ve společnosti Sun Microsystems, kde pracoval před založením společnosti Transmeta v roce 1995, měl na starosti změnu instrukční sady pro mikroprocesor značky SPARC společnosti. Přestože se do projektu pustil v roce 1990, až v loňském roce byla nová instrukční sada připravena k použití. Potřebuješ čas, aby to průmysl dohnal, aby se tam dostal software, aby se aplikace převedly, řekl Ditzel TR před IPO společnosti. Je to opravdu velký problém.
Softwarová kamufláž
Aby vyrvali své čipy ze zastaralých instrukcí, budou návrháři mikroprocesorů pravidelně vše vyhazovat a začít znovu se zcela novým čipem, doplněným zbrusu novou instrukční sadou. Je to proces, s nímž se Intel potýká se svým značně opožděným mikroprocesorem Itanium, který bude prvním čipem společnosti, který směruje data v digitálních úsecích 64 bitů – tedy na 64bitové sběrnici. Osvobození návrhářů od 32bitové sběrnice současné generace povede k velkému skoku vpřed ve výkonu. Ale začít znovu také vede k čipu, který zpočátku nebude mít žádný software, který by na něm běžel, což není ideální stav. I když vývojáři softwaru spolupracují a začnou psát kód do nové sady instrukcí, tento přístup funguje pouze jednou: Pak jste zpět tam, kde jste začali, se starším softwarem a roky dlouhým cyklem na provedení jakékoli zásadní změny.
Ditzel ve své kariéře nejednou vyzkoušel přístup k návrhu čipů od začátku. Před dvěma desetiletími, jako postgraduální student na University of California v Berkeley, byl spoluautorem článku nazvaného The Case for Reduced Instruction Set Computing. Tato klíčová práce inspirovala celou školu designu mikroprocesorů; dnes jsou takzvané RISC čipy všude.
Po postgraduální práci na designu RISC v Berkeley přešel k návrhu varianty čipu RISC s názvem CRISP v Bell Labs; CRISP však nikdy nezískal širokou podporu vývojářů softwaru. Ditzel pak udělal třetí pokus navrhnout nový mikroprocesor, když pracoval na čipu arsenidu galia ve společnosti Sun, který nebyl nikdy vyroben. Bylo to, jako bych lidem říkal: Podívejte se! Můžete použít tento skvělý nový mikroprocesor – stačí, abyste vyhodil veškerý software a začal znovu!“ řekl Ditzel. Bojoval jsem v tom boji 20 let a vzdal jsem to.
Ale opravdu se nevzdal. Místo toho našel cestu ven.
Na začátku 90. let ve společnosti Sun byl Ditzel ovlivněn prací ruského experta na superpočítače Borise Babayana, se kterým neformálně spolupracoval a kterého jmenuje jako klíčového mentora v jeho rozvíjejících se úvahách o návrhu čipů. V té době Babayan a jeho společnost Elbrus experimentovali s technikou známou jako dynamický binární překlad a kompilace (které Transmeta dala mnohem přívětivější název code-morphing, termín, který mají od té doby ochrannou známkou).
Psaní kódu tak, aby jeden druh softwaru mohl běžet na jiném druhu hardwaru, je stará myšlenka: například IBM to udělala v 60. letech minulého století. Výsledky těchto pokusů však byly vždy beznadějně pomalé. Ale žetony byly stále rychlejší. Počátkem 90. let konstruktéři předpokládali, že by mohl existovat způsob, jak překládat z jedné instrukční sady do druhé tak rychle, že výkon sotva utrpí. Namísto statického, individuálního překladu každé instrukce by tato technika mohla být dynamická, zkoumat neefektivitu aplikace v reálném čase, opravovat je a pamatovat si opravy.
Je kontraintuitivní si myslet, že umístění další vrstvy softwaru mezi aplikaci a CPU by věci nezpomalilo – je to jako říci, že zakřivená čára mezi dvěma body je kratší než přímka. Ale vztah mezi softwarem a hardwarem již není přímá čára: Kvůli neefektivitě způsobené roky vývoje kolem stejné instrukční sady by dynamický překlad teoreticky mohl zlepšit výkon. Na hardwarové stránce se může proces zasekávání více a více obvodů do čipu, aby se dosáhlo posledního nárůstu výkonu, ve skutečnosti zvrtnout a věci zpomalit. Software je také zřídka tak efektivní, jak by mohl být připravený: Vývojáři aplikací, kteří sledují datum odeslání, zmrazí kód, když funguje, ne když je dokonalý. Dynamický překlad by teoreticky mohl najít vůli a utáhnout ji.
Než Ditzel založil společnost Transmeta, překladatelské techniky byly používány pouze k tomu, aby spolu existující, nekompatibilní software a hardware mluvily. Ditzel a jeho spoluzakladatelé udělali intelektuální skok: Pokud by další vrstva softwaru mohla umožnit běh aplikací na nekompatibilním hardwaru, co jim bránilo provést radikální změny v samotném základním hardwaru s využitím nejnovějších možností?
V roce 1994 Ditzel a spoluzakladatel Doug Laird vycházeli z projektu ve společnosti Sun, jehož cílem bylo zlepšit fungování Windows na pracovních stanicích Sun pomocí technik dynamického binárního překladu. Uvědomili jsme si, že kdybychom do hardwaru mohli přidat jen některé funkce, mohli bychom to skutečně udělat docela rychle, říká Laird. Byl to skvělý nápad, dodává a připomněl, že Sun neměl zájem o změnu designu svého procesoru, aby bylo možné lépe spouštět aplikace, které byly napsány tak, aby běžely na standardních čipech Intel. Ditzel a Laird udeřili sami. Ditzel naverboval Colina Huntera, respektovaného odborníka na emulační techniky, a Roberta Cmelíka, který pracoval na optimalizaci kódu ve společnosti Sun.
Jak už to v technologických inovacích bývá, praxe se ukázala těžší než teorie: První návrh čipu Transmeta běžel tak pomalu, že čipu trvalo půl hodiny, než nabootoval operační systém. Ale s každou ze čtyř revizí čipu se tým dozvěděl více o binárním překladu. Pět let usilovné práce, kterou prováděla brigáda 200 inženýrů podpořených několika stovkami milionů dolarů rizikového kapitálu, vytvořilo čip, který běžel dostatečně rychle na to, aby byl srovnatelný s procesory Intel. V lednu tohoto roku Transmeta oznámila první dva hybridní křemíkové/softwarové čipy v řadě Crusoe. První, nazvaný TM5400, je 700megahertzový čip pro ultratenké, ultralehké notebooky Windows. Provozuje software napsaný pro čipy Intel na zlomek energie, kterou spotřebuje Pentium. Druhý, TM3120, je 400MHz čip určený pro provozování internetových zařízení využívajících verzi Linuxu, kterou Torvalds vyvinul pro mobilní zařízení.
Oba čipy představují pro vývojáře softwaru tvář, která je zcela kompatibilní s instrukční sadou v procesorech Intel. Pod nimi jsou čipy VLIW, pro velmi dlouhé slovo instrukcí, architektura se 128bitovou sběrnicí, která dokáže kombinovat instrukce čipu Intel do delších řetězců a tím je provádět rychleji. Mezi sadou instrukcí směřujících ven a základním hardwarem je software Transmeta pro morfování kódu, který převádí instrukce ve stylu Intelu do formy, kterou Crusoe zvládne, optimalizuje jejich provádění a ukládá optimalizovaná provádění do paměti. Až se čip příště setká se stejnou operací, překlad již není nutný. Software pro morfování kódu (který je umístěn v paměťovém čipu pouze pro čtení) je prvním programem, který se spustí při spuštění procesoru.
Protože se tolik funkcí Crusoe přesunulo z hardwaru na software, je čip mnohem jednodušší než srovnatelný procesor Pentium a vyžaduje pouze jednu čtvrtinu tranzistorů. Vedlejší výhodou menšího počtu tranzistorů je, že Crusoe spotřebovává mnohem méně energie k provozu, a proto se společnost Transmeta rozhodla zaměřit své první čipy na mobilní trh. Další výhodou přístupu Crusoe je zkrácení času potřebného k vývoji nového čipu. Vzhledem k tomu, že velká část návrhu spočívá v softwaru, Ditzel říká, že někteří zákazníci již požádali o změny v instrukční sadě a že inženýři společnosti Transmeta by je mohli implementovat do 24 hodin. I když to pravděpodobně nezahrnuje čas na jakékoli testování chyb, je nicméně jasné, že Transmeta našla způsob, jak drasticky zkrátit vývojový cyklus.
Nick Tredennick, spoluarchitekt původní Motoroly 68000 (procesor, který poháněl první Macintoshe), a nyní nezávislý konzultant pro návrh mikroprocesorů, není sám, kdo došel k závěru, že Ditzel na něčem je. Když jsem poprvé slyšel o Crusoe, myslel jsem si, že je to jen nejnovější výstřelek nebo nová verze emulace, která nikdy nefungovala, říká Tredennick. Ale poté, co slyšel Ditzel mluvit, Tredennick se stal konvertitou. Transmeta, říká, dělá něco zásadně odlišného od toho, co se dělalo od vynálezu počítače.
Čipy Transmeta jsou ze své podstaty jednodušší na design než konvenční, říká Wharton ze Stanfordu. Můžete provést softwarovou změnu, začlenit ji do testovací verze, spustit a zjistit, zda funguje, to vše během jednoho odpoledne. V oblasti hardwaru může být doba obratu tři až devět měsíců. Intel může navrhování Itanium věnovat 500 nebo 1 000 člověkoroků. Další čip Transmeta může vyžadovat 10, 20 nebo 50. To jsou oříšky myši.
Pohyb směrem k výrobě čipů, které jsou spíše hybridy softwaru a hardwaru než čistého křemíku, se široce uchytil. Transmeta si ale pravděpodobně vedení v dohledné době udrží. Je to proto, že Ditzel byl první, kdo vzal tyto nápady z laboratoře, najal 200 zaměstnanců, aby na nich pracovali, a postavil čip, který fungoval. Cestou vytvořil minimálně dva zátarasy, které zpomalí jeho konkurenci.
Prvním jsou testovací nástroje společnosti. Ve skutečnosti klenoty Transmety pravděpodobně ani nejsou samotné čipy, ale spíše diagnostický software, který byla společnost nucena vytvořit v procesu vývoje. Všechny běžné nástroje, které existují pro kontrolu konvenčních čipů, předpokládají, že existuje statický vztah mezi softwarem, čipem a danou instrukcí. Transmeta potřebovala vyřešit problém testování mikroprocesoru, který se dynamicky mění v reakci na software, který běží. Ostatní společnosti budou muset začít od nuly, aby vytvořily své vlastní testovací nástroje, což může snadno trvat rok nebo déle.
