Minulý týden dělalo vlny odhalení procesoru Apple M1, jenž je prvním ARM CPU pro tyto „velké počítače“, který firma v rámci svého přechodu platformy Mac/MacOS z procesorů Intel na vlastní architekturu vyrobila.
Apple při odhalení uváděl bombastická čísla o několikanásobně lepších výkonech a marketing (případně fanoušci) čip M1 už korunují na nejlepší procesor na světě vůbec, ale jak rychlý je doopravdy? Tento týden začala firma prodávat první počítače a notebooky s tímto procesorem a konečně máme nezávislé benchmarky, takže se podíváme, co zatím bylo zjištěno.
Asi nejlepší recenzi má zdá se AnandTech, který měl v testu kompaktní desktopek Apple Mini, jenž je aktivně chlazený. Pro připomenutí: Apple M1 obsahuje čtyři výkonná procesorová jádra s architekturou označenou Firestorm, která běží na taktu 3,2 GHz. Tento takt je stabilní, Apple nepoužívá nic jako turbo. Pokud nedojde k throttlingu kvůli přehřátí (to nastává na MacBooku Air s pasivním chlazením), pak se zřejmě podtaktovává.
Dále má SoC čtyři jádra úsporné architektury Icestorm na 2064 MHz, ta mohou běžet současně s velkými jádry (v mnohovláknových benchmarcích). Čip obsahuje přímo na pouzdru paměti LPDDRX-4266 (šířka 128 bitů) obvyklé v noteboocích. Ty dodávají velmi vysokou propustnost, jakou v desktopu budete mít jen s vysoce přetaktovanou DDR4. Nevýhoda je, že maximální kapacita RAM je tímto pouzdřením k CPU limitována na 16 GB.
Galerie: ARM procesor Apple Silicon M1
Jak nízká je vlastně spotřeba?
Jedna z kardinálních otázek je, jakou má architektura M1 spotřebu. Apple nic nezveřejňuje, ovšem zdá se, že TDP by mohlo být až někde u 35 W. Ovšem s tím, že čip velmi často spotřebovává mnohem méně. Je to kvůli oné absenci turba, kdy vlastně není (kromě případu přehřátí) použitá pokročilá správa taktu jako v procesorech x86. Ty v případě, že jim „zbývá rozpočet“, zvýší frekvence až dokud nedosáhnou TDP (nebo limitů spotřeby v boostu jak je PL2 u Intelu a PTT u AMD).
Apple M1 má velmi nízké spotřeby v jednojádrové zátěži, velké jádro Firestorm zdá se potřebuje jen nějakých 6 W v porovnání s více než 20 W, které při svém boostu potřebují 10nm a 7nm jádra Intelu a AMD. Pokud by ta běžela na méně agresivním boostu, byla by asi výrazně blíže ve spotřebě, protože posledních pár set MHz stojí nejvíce wattů. Ale tím by zase nejspíše ztratila tolik výkonu, že by je M1 prakticky vždy v jednojádrovém výkonu poráželo. Firestorm od Apple tady ukazuje jasnou výhodu v energetické efektivitě (na druhou stranu mu v tom také trošku pomáhá 5nm proces).
ARM jádra 20–24 W, integrované GPU 10 W
Při zatížení všech jader spotřeba značně kolísá podle toho, jaké programy běží – zase to je proto, že není přítomen boost, který by ji vyvažoval změnou taktů jako na x86. Podle odhadů AnandTech ze celkového odběru ze zásuvky naměřeného u Mac Mini je pravděpodobně spotřeba, na kterou může vylézt celé 4+4jádro při plném zatížení CPU, někde okolo 20–24 W.
Toto dokládá i použití údajů Mac powermetrics v operačním systému. Například při Cinebench R23 je však spotřeba poměrně mírná (toto mimochodem platí i pro Intel): spotřeba všech jader CPU je asi 15 W a s jedním jádrem jen 3,8 W. Ale subtest benchmarku SPEC 502.gcc v jednom vlákně „žere“ až 4,8 W a subtest 511.povray dokonce 5,4 W. Při multivláknovém spuštění tohoto testu berou jádra CPU celkem 21 W. Je asi možné, že by se dalo dosáhnout i o trošku víc, vzhledem k tomu, že zatím nebyly zdaleka vyzkoušeny všechny možné potenciálně výhřevné programy (bylo by zajímavé třeba vidět, co by udělal port Prime95).
https://twitter.com/RyanSmithAT/status/1328919676265500678
AnadTech uvádí příklad, kdy se mu podařilo vytížit CPU na asi 21 W (možná tím povray) a zároveň GPU současným spuštěním grafické zátěže na 9 W a celková spotřeba procesoru byla podle údajů necelých 33 W. Nad 30 W se tedy lze při maximálních zátěžích dostat.
Chlazení v Mac Mini je na toto patrně dimenzované (a v MacBooku Pro také, jeho chlazení je nezměněné proti předchozí verzi s 28W Intelem), takže toto není nějaká špičková spotřeba, ale asi trvale udržitelná. Ovšem při typickém využití se budete pohybovat výrazně níže. Procesor M1 je tedy velmi úsporný, ale pokud jste čekali, že jeho TDP je třeba jen 10 W nebo 15 W, měli jste příliš velké oči. TDP ve smyslu spotřeby, kterou procesor může vykázat, je vyšší. Ovšem běžné používání se do 10–15 W zdá se velmi často vleze.
Výkon: konečně jasno?
Jako první byly známé výsledky pro benchmarky Geekbench 5, který je multiplatformní a pro testování čipů Apple se často používá (jeho kořeny by snad dokonce měly být původně právě na platformě Mac). Jak už jsme psali dříve, v tomto testu je Apple momentálně asi nejrychlejší ze všech CPU, nebo alespoň pokud porovnáváme s výsledky na Windows a s procesory ve výchozím nastavení (skóre může ovlivnit použití Linuxu a asi dost i nastavení pamětí).
AnandTech naměřil jednovláknový výkon 1745 bodů. Nejvýkonnější procesor architektury Zen 3 AMD Ryzen 9 5950X mu dosahuje 1655 bodů (o 5 % méně, což by mohl být i vliv OS), Intel Core i9-10900K jen 1467 bodů (o 16 % méně než M1). V grafu bohužel není Tiger Lake coby nejnovější architektura Intelu, ale Core i7-1165G7 a i7-1185G7 by měly pod Windows mít typicky 1550 až 1600 bodů.
Ve vícevláknovém testu jsou ale desktopové procesory s více jádry mnohem dále, Apple M1 dosahuje na Mac Mini asi 7715 bodů, Intel Core i9-10900K už 10 981 (+42 %) a Ryzen 9 5950X rovnou 15 726 bodů (+104 %). Mimochodem, v grafu si všimněte údaje pro „Rosetta2“. To je výsledek x86 verze testu běžící „na jabku“ pod emulací (přesněji řečeno, se staticky přeloženým kódem, nejde úplně o realtime překlad z x86 na ARM). Cena běhu nenativní verze je zde jen 21–24% snížení výkonu.
Renderování a mnohovláknové programy Apple nevyhrává
Před týdnem jsme psali o tom, že pro ARM na Macu a procesor M1 byl vydán benchmark Cinebench R23, takže lze novinku srovnat s x86 procesory v této populární testovací úloze. Apple v ní také potvrzuje špičkový výkon, ale už není nejrychlejší. Apple M1 má skóre v jednom vlákně 1522 bodů (a použití x86 verze přes Rosettu2 zdá se sníží výkon o 34 %). Tiger Lake Core i7-1165G7 je ale mírně rychlejší (1532; model i7-1185G7 by měl být ještě o pár bodů napřed). A Ryzen 9 5950X má výrazně (+8 %) vyšší skóre, 1647 bodů.
Lépe řečeno, to byly výsledky pro jednovláknové testování, které má ale spíše akademický a význam pro analyzování architektury. V praxi u renderovacích programů rozhoduje výkon všech jader najednou. Tam už to tak slavné není, M1 má jen čtyři velká jádra a také mu chybí SMT. Dosahuje 7833 bodů, a tak ho dokáže porazit i mobilní Ryzen 7 4800U s jádry Zen 2, který dá 9826 bodů (přitom v ST skóre má jen 1199 bodů).
AnandTech neuvádí skóre pro výkonnější procesory, ale třeba Ryzen 9 5900X by měl podle testu ComputerBase dosahovat víc jak 22 tisíc bodů (+181 %), Ryzen 9 5950X dokonce 28 782 (+267 %, tedy víc jak 3,5× výkon, ovšem při spotřebě CPU 142 W).
Mimochodem, na Ars Technica měřili výkon v Cinebench R23 také na pasivně chlazeném MacBooku Air po třiceti minutách běhu, tedy s předpokladem, že po takovéto době by se asi mohlo ukázat, jak ho absence ventilátoru limituje a kolik by tedy mohl být trvale udržitelný výkon. Zahřátý MacBook Air měl výkon v mnohovláknovém testu už jen 5369 bodů, zatímco na začátku testování dal 6803 bodů. Studený měl proti MacBooku Pro s ventilátorem výkon o 12 % horší, zahřátý už ale ztrácí výkonu víc, dosáhl jen 5369 (o 31 % méně než MacBook Pro s M1). Nejspíš už tedy byl throttlován pod hranici 10 W.
...ovšem enormní výkon v javascriptu
Je jedna oblast, která zdá se procesoru od Applu výjimečně sedí. S abnormálně vysokým náskokem vyhrává v (aspoň některých) testech výkonu v browserech. Speedometer u něj ukazuje výkon o 97 % vyšší než pro Core i9-10900K a o 67 % vyšší než u Ryzenu 9 5950X.
SPEC: těsný souboj se Zenem 3
AnandTech u ARM procesorů také rád provádí testování v sadě benchmarků SPEC. Jejich podrobné výsledky můžete vidět v galerii. Ve starším (až dost zastaralém) testu SPEC2006 je Apple M1 ve vedení, pokud jde o jednojádrový výkon – celočíselná část má celkově o 1 % vyšší výkon než Ryzen 9 5950X a o 18,5 % vyšší výkon než Intel Core i9-10900K. Skóre je ještě vyšší v FPU části, kde Apple vede o 10,5 % nad AMD a o 38,5 % nad Intelem.
Novější verze tohoto testu (s jinou skladbou programů/kódu, i když u obou by se asi dalo kritizovat) vychází trošku jinak. V jednovláknovém výkonu celočíselné části je M1 poražen Ryzenem 9 5950X o 9,5%, ale Apple M1 je o 8 % rychlejší než Tiger Lake (Core i7-1185G7) a o 14 % rychlejší než Core i9-1900K. Apple M1 si zachovalo prvenství jen v FPU části, kde vede o 6 % nad Zenem 3, o 20,5 % nad Intel Tiger Lake a o 26,5 % nad Intel Comet Lake.
GPU je velmi schopné
Mimochodem, už tu na to nemáme moc místa, ale Apple M1 má také hodně schopné GPU. Zde patrně zapracovala kombinace energetické efektivity díky 5nm procesu, což dovolilo dosáhnout vysoký výpočetní výkon (GPU Nvidia jsou dnes jen na 8nm procesu a ty od AMD na 7nm, novější proces by dovolil o hodně snížit TDP), a k tomu rychlých pamětí LPDDR4X. Grafika tak má hodně slušný herní výkon, mezi integrovanými zdaleka nejvyšší.
Galerie: Výkon ARM procesoru Apple M1 ve světových recenzích
ARMpokalypsa ne, výkony spíš skonvergovaly?
Z těchto výsledků to vypadá, že když zprůměrujeme výsledky, které jsou někdy o kousek před, někdy o kousek za, pak se Apple dostal na prakticky stejnou úroveň v jednojádrovém výkonu jako x86 procesory Intelu a AMD (s výjimkou onoho testu browseru). Pokud srovnáváme nejnovější jádro Applu s nejnovějším Intelem a AMD (a ne se staršími CPU, což dělal třeba Apple při uvedení, ale je to zavádějící), tak M1 někdy zvítězí, někdy prohraje v jednojádrovém výkonu a lze asi říci, že pokud nehodnotíme zároveň spotřebu, jsou špičkové modely AMD a Intelu ve stejné výkonnostní lize.
Apple ani zdaleka nepřekoná výkon všech jader u výkonných desktopových procesorů (které mají samozřejmě výrazně vyšší spotřebu k živení svého výkonu) a vypadá to, že minimálně v některých testech prohraje i s mobilními 7nm Ryzeny „Renoir“ – opět je ale možné, že mu na to stačí menší spotřeba. Je možné, že Intel by ho dorovnal, kdyby Tiger Lake mělo šest jader.
To může trošku překvapit, protože by 5nm proces měl být v multivláknových zátěžích jasná výhoda. Procesorům x86 v MT úlohách zřejmě ale dost pomáhá SMT/HT, což je něco, co Apple stejně jako turbo boost zatím neimplementoval (a spoléhá se místo toho na využití malých úsporných jader). Samozřejmě, pokud by čip měl osm velkých jader, tak by byl schopen vyvinout výrazně větší MT výkon, ovšem bylo by to také s vyšší spotřebou.
Ač to tak v jásotu nad energetickou efektivitou M1 (která je aspoň v jednovláknovém výkonu opravdu silná) někdy nevypadá, možná tak místo nějaké obří dominance, kterou někteří prorokovali, „až Apple nebude limitovaný chlazením v telefonech“ nastala spíš pozoruhodná konvergence. Trošku to vypadá, jako by se linie ARMu od Apple a x86 spíš sešly na podobném jednovláknovém výkonu, i když každý šel jinou cestou – Apple má vysoké IPC a nízkou frekvenci, Intel/AMD vysokou frekvenci a nižší IPC.
V dalším vývoji zřejmě může Apple kromě IPC navyšovat i takty a u x86 budou další generace architektur pravděpodobně zaměřené na IPC. Asi by bylo pěkné, pokud by x86 konvergovalo k Applu i ve spotřebě, ale těžko říct, zda v to můžeme doufat, protože Apple je rychlejší v přechodu na nové procesy a v momentě, kdy bude mít AMD Zen 4 na 5 nm, by už Apple zase mohl přecházet na 3nm proces (a u Intelu je situace se 7nm a 5nm procesory podobná nebo horší).
Soupeření těchto platforem teď každopádně bude zajímavé sledovat, zvlášť když s překlopením MacOS teď bude snazší srovnávat výkony, než když se CPU Apple daly zkoušet jen v telefonech.