Za jídlo, šaty a vzduch otročíme na programech z temných světů

Technologie v propadlišti dějin 4: PowerPC

Procesory PowerPC považuju za to nejlepší co v historii moderních procesorů vzniklo. V roce 2005 se od nich ale odklonil jeden z iniciátorů jejich vzniku – Apple – a ony se díky tomu prakticky ocitly v propadlišti dějin. Nebo ne?Když v roce 1993 Intel uvedl svoje Pentium, bylo jasné, že tentokrát se asi procesorům Motorola 680×0 nepodaří jen tak technologický a výkonový náskok srovnat. Apple se rozhodl nečekat a ve spolupráci s IBM a Motorolou vytvořil v rámci AIM aliance procesorovou platformu PowerPC.

PowerPC

IBM se už počátkem 90. let rozhodlo implementovat svojí serverovou architekturu POWER do desktopového procesoru, kontaktovalo tedy Apple a záhy došlo k dohodě, která postupně vyústila v řešení výše uvedeného problému. Obě uvedené společnosti přizvaly Motorolu, která v té době dodávala právě procesory řady 68000 do počítačů od Apple. Motorola v té době již měla vlastní procesory nové generace (řada 88000), dokonce na nich bylo postaveno několik počítačových systémů, nicméně zdálo se výhodnější přijmout už hotové. Jejich přínosem vývoji PowerPC bylo to, že nově vznikající procesor získal sběrnici kompatibilní právě s řadou 88000, aby se dal rovnou použít v prototypech, které v té době Motorola a Apple už měly.

Na rozdíl od v té době rozšířených procesorů x86 (tedy i80486 a nové Pentium) a 68k (68030, 68040), které mají CISC (Complete Instruction Set Computing) architekturu, je PowerPC postavené na architektuře RISC (Reduced Instruction Set Computing). Procesory CISC mají tradičně velké množství instrukcí, pokrývající nejrůznější výpočetní operace. RISC naproti tomu má instrukční sadu omezenou, tvoří ji jen základní nezbytné instrukce, složitější operace se skládají z několika těchto jednoduchých instrukcí. Značným přínosem pak je, že instrukce se vykonávají rychleji, stejně dlouho a navíc jsou stejně dlouhé (co se týče délky v bytech).

PowerPC 601

Prvním procesorem vzniklým ze spolupráce Apple, IBM a Motoroly bylo PowerPC 601. Prototypy procesoru byly hotovy už v roce 1992, nicméně v počítačích Apple se objevilo až v roce 1994, poté co na podzim předcházejícího roku debutovalo v pracovních stanicích od IBM. Hlavně díky tomu, že mělo proti prvním Pentiím dvojnásobnou L1 cache tomuto procesoru velmi obstojně konkurovalo, jak je možné přesvědčit se třeba tady. Vyrábělo se taktované od 60 do 120MHz. Jako hlavní procesor se v počítačích od Apple ohřálo jen rok (modely 6100, 7100 a 8100), o rok později bylo ve dvou lowendových modelech – v PowerMacintosh 7200 a 7500 a v roce 1996 pak už jen Workgroup Server 7250 (což byl PowerMacintosh 7200 s patřičným serverovým softwarem). Dále už ho ve strojích od Apple nenajdeme vůbec.
PowerPC 601 byl totiž jakýsi první vývojový stupeň, obsahoval totiž některé instrukce, které obsahovaly pouze serverové POWER procesory a měl sloužit k hladkému přechodu serverových IBM aplikací z těchto procesorů právě na PowerPC. Další generace tyto instrukce už emulovaly pomocí instrukcí jiných (jedná se asi o 5% instrukcí).

Další dva modely – PowerPC 603 a PowerPC 604 – bývají někdy označovány jako G2, jedná se totiž o příslušníky stejné (druhé) generace PowerPC procesorů.

PowerPC 603

PowerPC 603 je první procesor, který implementuje kompletně specifikaci 32-bitové PowerPC architektury. Proti předchozí generaci postrádá například podporu symetrického multiprocessingu (Alespoň tak tvrdí dokumentace IBM, firmě Be Inc. to zjevně nevadilo a tak postavila dvouprocesorový BeBox, který obsahoval dvě 603e. Jak to udělali nevím a Wikipedia také ne.) Na druhou stranu má typicky notebookové vlastnosti jako například sleep mode (ve kterém má spotřebu v řádech jednotek miliwattů). Původní varianta 603 se v Macintoshích příliš neuchytila – v notebookách vůbec a v desktopech jen v několika levnějších modelech. Měla totiž poloviční L1 cache (8+8kB) a to se projevovalo při emulaci 68k v MacOSu. Vylepšené varianty 603e a 603ev (s 16+16kB cache) už se vyskytovaly téměř ve všech low-end desktopech od Apple v letech 1995 až 1997 a ve všech laptopech PowerBook, které měly čtyřciferné modelové označení. Za zmínku stojí také IBM ThinkPad 800, který neměl jako ostatní ThinkPady procesor kompatibilní s Intel x86, ale právě PowerPC 603e.

PowerPC 604

PowerPC 604 byl výkonný procesor pro desktopy a pracovní stanice. Podporoval SMP, proto se počínaje ním začíná u Apple objevovat konfigurace s označením „x2“ v procesorové specifikaci. 604 a varianty 604e a 604ev se vyráběly na frekvencích od 100 až po 400MHz. Cache v průběhu vývoje tohoto procesoru stoupla z 16+16kB u 604 na 32+32kB u 604e a 604ev. Příkon se přitom pohyboval maximálně kolem 20W. Všechny hi-endové stroje, například PowerMacintoshe 8600 a 9600 byly vybaveny právě tímto procesorem. Za zminku stojí jistě i jediný počítač od roku 1993, který ač vyrobený Applem, nebyl Mac a neběžel na něm MacOS – Apple Network Server. Tento profesionální server, na němž běžel AIX od IBM a který bohužel komerčně zcela propadl také používal 604 respektive 604e.

PowerPC 750

Opravdová PowerPC revoluce přišla v době třetí generace PowerPC procesorů, která sourhně nese logické označení PowerPC G3. Jedná se o procesory PowerPC 740/750/745/755 a jejich varianty. Procesory 740/750 vznikly odvozením od low-end 603e jako jeho nástupci. Brzy se však ukázalo, že jsou tak výkonné, že nástupce PowerPC 604 nebyl vůbec vyvinut. 740 byla plně pinově kompatibilní s 603. Měla 32+32kB L1 cache a byla rychlejší než Pentium II, přičemž si ale ponechala velmi nízký odběr (příkon v řádech jednotek wattů). 750 navíc nabízela ješte externí (backside) L2 cache až do velikosti 1MB, díky čemuž byla ještě o třetinu rychlejší.
Shodou okolností se jedná právě o dobu, kdy Apple po dekádě v roli průměrného výrobce počítačů (byť velmi kvalitních) přešel po návratu Steva Jobse agresivního marketingového útoku v roli inovátora IT odvětví. PowerPC G3 byl právě čip, který mohli využít ve své reklamní kampani k tomu, aby „zametli“ s konkurencí:

Reklamy 05 - snail

Na procesoru PowerPC750 byla kolem roku 1998 založena celá produktová nabídka Apple: PowerMacintosh G3, iMac G3, PowerBook G3 a později i iBook G3. Počínaje MacOS 8.5 výrazně ubylo emulovaného 68k kódu, který v předchozích čtyřech letech nejvíce zabíjel výkon procesorů PowerPC a tak se výkon G3 mohl projevit ještě více (Kdyby byl dokončen Copland, multitaskový mikrokernelový MacOS, který měl vyjít v roce 1995 a měl být plně nativním PowerPC systémem, mohlo se toto stát už dříve). Dá se ale bez nadsázky říct, že právě tyto dva faktory vrátily Apple do hry jako výrobce velmi rychlých počítačů. Není se proto co divit, že tento procesor ve své modifikaci 750fx byl v produktech Applu (konkrétně v iBooku) ještě v létě roku 2003, tedy šest let poté, co byl poprvé uveden v PowerMacintoshi G3. Procesory třetí PowerPC generace se také začaly prosazovat v nejrůznějších variantách PowerPC Amigy a například i v herních konzolích (Gekko v Nintendo GameCube atd.)

PowerPC 7447A

Čtvrtá generace procesorů PowerPC byla tak trochu netradiční a to hned v několika ohledech. Byly totiž doplněné vektorovou výpočetní jednotkou AltiVec, která jim umožnila jednoznačnou dominanci ve výpočtech, při kterých ji bylo možné použít. Tuto generaci tvořily výhradně procesory PowerPC 7400 a odvozené (7410, 7445, 7450, 7455, 7447, 7457 a 7448) vyráběné Motorolou. IBM totiž v daném okamžiku nespatřovalo výhody vektorové jednotky a dále s zabývalo rozvojem třetí generace, z níž přešlo rovnou na generaci pátou. Smutným faktem je, že právě během této generace to s PowerPC začalo jít s kopce: Procesory sice podávaly slušný výkon při několikanásobně menším odběru (PowerMac G4 překročil hranici jednoho gigaflopu) a zahřívání, ale konkurence od Intelu v té době správně pochopila, že uživatel nechce výkon, chce větší číslo před údajem v MHz. Zatím co počítače obsahující procesory G4 podávaly téměř nedostižný výkon i na frekvencích kolem 800MHz, Intel v té době pokořil se svým Pentiem 4 hranici 2GHz. Navíc fakt, že procesory čtvrté generace měly jen jednoho výrobce se projevoval v nedostatečném zásobování. Apple se tak dokonce dostal do situace, kdy používal procesory tří různých generací zároveň – nejlevnější iBooky měly procesory třetí generace od IBM, nejvýkonnější PowerMacy měly procesory generace páté a vše ostatní mělo procesory G4. I tyto procesory v počítačích od Apple vydržely šest let, bylo to však zjevně mnohem déle, než si Steve Jobs představoval.

PowerPC 970fx

Člověk by čekal, že u páté generace procesorů se Apple poučí. Nestalo se: Znechuceni pomalým vývojem u Motoroly (která navíc výrobu procesorů odhodila na dceřinnou společnost Freescale) se obrátili na IBM. IBM pro ně vyvinulo skutečně výkonný plně 64bitový procesor PowerPC 970. Celá pátá generace procesorů se proto točí okolo procesorů 970, 970FX a dvoujádrového 970MP od jediného výrobce: IBM. Motorola-Freescale nikdy procesor G5 nevyrobila, vývoj který v době ohlášení spolupráce Apple s IBM existoval, byl odložen na neurčito. Nutno říct, že IBM si vývoj mírně ulehčilo: Vzalo svůj serverový POWER4 procesor a uzpůsobilo ho desktopovému nasazení. Z toho vyplynuly dvě věci: procesor schopný běžet na vysokých frekvencích a opravdu velmi žravý a hřející procesor. PowerPC 970 jako by odhodilo všechny hlavní výhody předchozích generací. Dá se porovnat s tím co bylo u Intelu Pentium 4. Dlouhá pipeline mu umožňuje pracovat na frekvencích přes 2GHz, ale není ani zdaleka tak efektivní jako krátké pipeline u předchozích čtyř generací a predevším vysoká frekvence při dané výrobní technologii znamenala příkon i přes 100W. Apple neměl rozhodně důvod k přehnané spokojenosti: Procesory na frekvenci do 2GHz nebyly o mnoho výkonnější než G4 na podobných frekvencích (pokud se aplikace masivně netěžila z 64bitových operací), navíc při předvedení PowerMacintoshe G5 slíbil Steve Jobs, že do roka a do dne překročí jeho procesor frekvenci 3GHz, což se nikdy nestalo. Procesory bylo později dokonce nutné chladit kapalinou, což znemožnilo jejich nasazení do notebooků. Proto se již po dvou letech rozhodl tento prakticky jediný odběratel desktopových G5 procesorů definitivně PowerPC opustit a přejít na nově se rodící procesory Intel Core. IBM tou dobou navíc už směřoval svoje procesory spíše do herních konzolí a spotřebních zařízení, pro které vytvořil zejména Cell. Pro firmu jako IBM se totiž v důsledku ukázalo nevýhodné mít krátké inovační cykly kvůli jednomu malému odběrateli.

Dá se říct, že s přechodem Applu na Intel skončila, nebo je minimálně na neurčito přerušena, éra jednoho z nejlepších desktopových procesorů. Freescale divizi desktopových procesorů zrušila a soustředí se na System-On-Chip procesory jako MPC8641D, MPC8640 nebo MPC8610 na nichž v současné chvíli není postaven žádný desktopový ani jiný počítač, ačkoliv výkon by pro to měly. Pak jsou tu ješte low-end SoC procesory, například MPC5121e, který se nachází v kompaktních počítačích CherryPal nebo MPC5200B, který najdeme na desce Efika, ale ty bohužel podávají výkon jako desktopy deset a více let zpátky, těží totiž právě z éry PowerPC 603 a PowerPC 604.
IBM dodává své procesory do herních konzolí: tříjádrové „Waternoose“ do XBOX360 od Microsoftu a vektorovými jednotkami nadupané Cell do Playstation3 od Sony. Za necelé dva tisíce dolarů si pak můžete koupit YDL PowerStation, která obsahuje dva dvoujádrove IBM PowerPC 970MP procesory.

To je bohužel smutný stav kdysi slavné platformy. Poté, co jednoho z mála inovátorů v dané oblasti – americkou firmu PA Semi – koupil Apple, který zřejmě nebude mít snahy vytvářet nové a úžasné PowerPC procesory, když už je sám nepotřebuje nezbývá než doufat, že se objeví někdo, kdo postaví počítač na procesorech z řady MPC86xx nebo právě na Cellu. Zatím se ale optimismu příliš nepropadám a užívám si radši svoji sbírku počítačů z doby, kdy lidé ještě věděli, že moderní 32bitový RISC procesor je lepší než pěti režimy kompatibility obtěžkané monstrum z druhé poloviny sedmdesátých let.