Apple släpper datorer med ARM-processor under 2021

Permalänk
Inaktiv

Några siffror från Geekbench 5 enkeltrådat (100-tal) samt pris:

A13 presterar 13 och kostar kanske 500-1000 kr.
Xeon W presterar 12 och kostar 44000 kr.
Core i9 9900 presterar 12 och kostar 5200 kr.
Core i3 8100 presterar 10 och kostar 1400 kr.
Pentium G5400 presterar 9 och kostar 700 kr.

Detta då *enkeltrådat*. Flertrådat är mest hur många kärnor man slänger in, hur mycket kiselyta och effekt man har råd med. Med ARM-kärnornas lägre effektförbrukning kan man ha fler kärnor, med 5nm isf 14nm får man också plats med många kärnor på rimlig kiselyta.

Så visst finns det ett alldeles lysande 'business case' för att gå över till ARM-arkitektur: Enkeltrådat är iPhone rappare än Mac Pro.

Permalänk
Datavetare
Skrivet av Mordekai:

Menar du att MacOS kommer släppas för Aarch64? I så fall har vi ett vad som löper ut 2021-12-31. Har inte Apple offentligt sagt att så ska ske vinner jag, annars vinner du? Äran att ha den nördigaste kristallkulan.

Har ingen insikt i Apples interna verksamhet, men gissar att MacOS kommer släppas för Aarch64 innan utgången av 2021 och är övertygad att det inte lägre är en fråga "om" utan enbart "när".

Kan se två saker pusha det förbi utgången av 2021

  1. Apple anser att utvecklarna behöver mer tid, fast i det läget lär vi ändå fått bekräftat att övergång kommer ske då man borde ge sådan information under Apple Worldwide Developers Conference

  2. Intel har gett en del kryptiska vinkar om framtida CPU som har "IPC på en helt ny nivå". Jag gissar att de syftar på Golden Cove och de lär ju låta Apple få se den tidigt för att inte tappa dem som kund

Båda handlar ändå i så fall bara att flytta tidpunkten för övergången. x86 ISA, likt ISA för 32-bitars ARM, innehåller flera dåliga designbeslut, beslut som inte kan fixas med mindre än att bryta bakåtkompatibilitet. Ju längre "kärnornas krig" kommer, ju större är fördelarna att byta till Aarch64 (eller RISC-V) då dessa ISA är designade efter modern språkdesigns insikt i hur man bör hantera minneskonsistens i programvara. Aarch64/RISC-V är de enda ISA som har en perfekt match mot hur C, C++, Java, C#, Rust m.fl. presenterar detta mot programmerarna. Det är också något som inte kan fixas i just x86, det är något som till största del faktiskt fick att fixa i 32-bitars ARM (från och med Aarch32 i ARMv8).

Felet alla tidigare försök att införa ARM på skrivbordet har haft är att "ingen" bryr sig egentligen om perf/W och pris/W om man inte samtidigt får minst likvärdig absolut prestanda. Men just det är ju vad Apple löst: deras CPU i en bärbar kommer resultera i den högsta prestanda per tråd som överhuvudtaget kommer gå att köpa.

Vi ser liknande tongångar hos Amazon och deras kommande Graviton2 serverplattform (baserad på ARMs Neoverse initiativ). De har dragit en parallell med Tesla. Ingen bryr sig egentligen om att Tesla bilarna är bättre för miljön, det säljer till några få övertygade själar. Men att kunna köra ifrån grannens bil med lätthet är något rätt många är beredd att lägga rätt stora summor på. Med Graviton2 räknat Amazon att ha en serverplattform med högre absolut prestanda än någon Xeon/Epyc kan ge, det är något många kommer vara beredd att betala för!

Ser inte poängen med vadet: men visst, kör till!
Endera förlorar jag och då slipper jag lägga ut pengar på en MacBook Pro. Och vi får fortsätta dra runt på x86-oken...
Eller så vinner jag, får äran och kommer gladeligen köpa en maxad MBP för att få en top-notch Aarch64 baserad laptop!

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av Yoshman:

Har ingen insikt i Apples interna verksamhet, men gissar att MacOS kommer släppas för Aarch64 innan utgången av 2021 och är övertygad att det inte lägre är en fråga "om" utan enbart "när".

Kan se två saker pusha det förbi utgången av 2021

  1. Apple anser att utvecklarna behöver mer tid, fast i det läget lär vi ändå fått bekräftat att övergång kommer ske då man borde ge sådan information under Apple Worldwide Developers Conference

  2. Intel har gett en del kryptiska vinkar om framtida CPU som har "IPC på en helt ny nivå". Jag gissar att de syftar på Golden Cove och de lär ju låta Apple få se den tidigt för att inte tappa dem som kund

Båda handlar ändå i så fall bara att flytta tidpunkten för övergången. x86 ISA, likt ISA för 32-bitars ARM, innehåller flera dåliga designbeslut, beslut som inte kan fixas med mindre än att bryta bakåtkompatibilitet. Ju längre "kärnornas krig" kommer, ju större är fördelarna att byta till Aarch64 (eller RISC-V) då dessa ISA är designade efter modern språkdesigns insikt i hur man bör hantera minneskonsistens i programvara. Aarch64/RISC-V är de enda ISA som har en perfekt match mot hur C, C++, Java, C#, Rust m.fl. presenterar detta mot programmerarna. Det är också något som inte kan fixas i just x86, det är något som till största del faktiskt fick att fixa i 32-bitars ARM (från och med Aarch32 i ARMv8).

Felet alla tidigare försök att införa ARM på skrivbordet har haft är att "ingen" bryr sig egentligen om perf/W och pris/W om man inte samtidigt får minst likvärdig absolut prestanda. Men just det är ju vad Apple löst: deras CPU i en bärbar kommer resultera i den högsta prestanda per tråd som överhuvudtaget kommer gå att köpa.

Vi ser liknande tongångar hos Amazon och deras kommande Graviton2 serverplattform (baserad på ARMs Neoverse initiativ). De har dragit en parallell med Tesla. Ingen bryr sig egentligen om att Tesla bilarna är bättre för miljön, det säljer till några få övertygade själar. Men att kunna köra ifrån grannens bil med lätthet är något rätt många är beredd att lägga rätt stora summor på. Med Graviton2 räknat Amazon att ha en serverplattform med högre absolut prestanda än någon Xeon/Epyc kan ge, det är något många kommer vara beredd att betala för!

Ser inte poängen med vadet: men visst, kör till!
Endera förlorar jag och då slipper jag lägga ut pengar på en MacBook Pro. Och vi får fortsätta dra runt på x86-oken...
Eller så vinner jag, får äran och kommer gladeligen köpa en maxad MBP för att få en top-notch Aarch64 baserad laptop!

Ja min teori bygger ju på att Apple inte introducerar ett nytt OS utan bygger ut iPad OS med funktioner från MacOS. Swift finns ju redan men kanske de tar hjälp av Microsoft med .Net Core och någon form av GUI extension för iPad OS. Emulering kommer förstöra prestanda för mycket men nya versioner av MacOS-program för plattformen finns redan idag. Mac Pro är inte den sista workstation Apple släpper för x86_64 enligt mig.

Poängen med vadet var dels att förtydliga vad som menas med att apple släpper datorer med sina egna processorer, de gör ju redan det idag med iPad, så menar du specifikt MacOS tror jag du har fel, menar du iPads i laptop-formfaktor tror jag definitivt du har rätt och det tror jag är den stora anledningen till att Apple forkade iOS. Ett mer intressant alternativ är ju en hybrid, något AMD talade om som en möjlighet för länge sedan när de licensierade Aarch64. Det är ju inte så enkelt som rå heltalsprestanda, det finns massor med hårdvaruimplementerade funktioner i dagens x86_64 CISC-cpuer som inte kan göras snabbare i någon RISC-processor.

Permalänk

Surfplattefunktionell ChromeBook-liknande sak till lägre pris. Kanske. Eller kanske nåt sätt att med appar kompensera avsaknaden av desktop-applikationer till Mac OS X. Om nu ryktet är sant.

Visa signatur

[4790k@4.6]+[RTX 3070 OC]+[16GB]+[4x SSD]+[NZXT+700W Gold]+[Win7]+[2x Samsung SA27950D <3]+[Topre TKL]+[G403 Hero wired]+[HyperX Cloud Alpha S]+[KingKong 2 Pro]. ZBook 17 G5, Quadro P3200, Win11.

Permalänk
Datavetare
Skrivet av Mordekai:

Ja min teori bygger ju på att Apple inte introducerar ett nytt OS utan bygger ut iPad OS med funktioner från MacOS. Swift finns ju redan men kanske de tar hjälp av Microsoft med .Net Core och någon form av GUI extension för iPad OS. Emulering kommer förstöra prestanda för mycket men nya versioner av MacOS-program för plattformen finns redan idag. Mac Pro är inte den sista workstation Apple släpper för x86_64 enligt mig.

I så fall är det enkom en semantikövning, vi verkar egentligen tro samma sak. MacOS, iPad OS och iPhone OS använder redan idag samma kärna och delar samma grundläggande bibliotek. Om de kommer kalla OS på kommande bärbara datorer för MacOS eller MbpOS eller iPad-with-keyboard OS är egentligen irrelevant.

Så förtydligande: "vadet" gäller huruvida Apple kommer börja stoppa in sina egna CPUer i deras bärbara datorer innan utgången 2021, oavsett vad de råkar sätt för namn på det OS som kör där.

Tror Microsoft är de sista Apple bör ta hjälp av vad det gäller övergång till ARM
Enda sättet att få någon form av vettig användning av Surface Pro X är att installera Windows Subsystem for Linux på den, installera Ubuntu (som är native Aarch64 i det läget) och köra allt man rimligen kan den vägen.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av Yoshman:

I så fall är det enkom en semantikövning, vi verkar egentligen tro samma sak. MacOS, iPad OS och iPhone OS använder redan idag samma kärna och delar samma grundläggande bibliotek. Om de kommer kalla OS på kommande bärbara datorer för MacOS eller MbpOS eller iPad-with-keyboard OS är egentligen irrelevant.

Så förtydligande: "vadet" gäller huruvida Apple kommer börja stoppa in sina egna CPUer i deras bärbara datorer innan utgången 2021, oavsett vad de råkar sätt för namn på det OS som kör där.

Tror Microsoft är de sista Apple bör ta hjälp av vad det gäller övergång till ARM
Enda sättet att få någon form av vettig användning av Surface Pro X är att installera Windows Subsystem for Linux på den, installera Ubuntu (som är native Aarch64 i det läget) och köra allt man rimligen kan den vägen.

Nej Windows är inte lysande på ARM men jag tror att .Net 5 som ska vara klart i höst kommer vara ett extremt bra kit för utvecklare som vill nå både Aarch64 och x86_64 med en kodbas. GUI-delen kommer ju vara OS-beroende på något sätt, i alla fall i OS från Microsoft/Apple i en överskådlig framtid.

Permalänk
Medlem

Apple har väl sitt Catalyst eller vad det heter som gör att utvecklare av iPad-appar/spel kan porta sin kodbas till MacOS. Alltså ingen emulering. De kanske redan har en lösning på gång med något liknande fast MacOS x86 -> MacOS Aarch64.

Att Apple skulle blanda in .Net känns inte det minsta troligt

Skickades från m.sweclockers.com

Visa signatur

Windows 11 Pro | Intel i7 8700 | ASUS Prime Z370-P | Corsair 16GB 3000MHz | ASUS GTX 1080 | Fractal Design Define S | Corsair RM750x | Hyper 212 EVO

Permalänk
Inaktiv
Skrivet av Yoshman:

<klipp>
Felet alla tidigare försök att införa ARM på skrivbordet har haft är att "ingen" bryr sig egentligen om perf/W och pris/W om man inte samtidigt får minst likvärdig absolut prestanda. Men just det är ju vad Apple löst: deras CPU i en bärbar kommer resultera i den högsta prestanda per tråd som överhuvudtaget kommer gå att köpa.

Här har vi problemet. Att byta till ARM är helt klart jättebra för Apple men inte alls lika mycket för användaren. Man kan få fördelar i prestanda och batteritid men dessa är trots allt marginella i sammanhanget. Däremot kan det bli rätt mycket strul med att få fatt i rätt binär till vad man nu sitter på för Mac. En annan risk med tätare integration med iOS/iPad är om macOS börjar bete sig som iOS/iPadOS, t.ex. att man bara kan installera appar från deras App Store.

Snacket om ARM har pågått länge men Apple säger ingenting. Skälen är uppenbara men innebär samtidigt att det är hopplöst för deras kunder att planera inköp av ny Mac. Dom får liksom haspla ur sig nu i kommande WWDC hur dom tänker göra framöver.

Permalänk
Skrivet av anon214822:

Några siffror från Geekbench 5 enkeltrådat (100-tal) samt pris:

A13 presterar 13 och kostar kanske 500-1000 kr.
Xeon W presterar 12 och kostar 44000 kr.
Core i9 9900 presterar 12 och kostar 5200 kr.
Core i3 8100 presterar 10 och kostar 1400 kr.
Pentium G5400 presterar 9 och kostar 700 kr.

Detta då *enkeltrådat*. Flertrådat är mest hur många kärnor man slänger in, hur mycket kiselyta och effekt man har råd med. Med ARM-kärnornas lägre effektförbrukning kan man ha fler kärnor, med 5nm isf 14nm får man också plats med många kärnor på rimlig kiselyta.

Så visst finns det ett alldeles lysande 'business case' för att gå över till ARM-arkitektur: Enkeltrådat är iPhone rappare än Mac Pro.

Intressant pris med tanke på den enorma cache som ingår!
De andra som man hittar med Android borde kosta 200-500 då de har väldigt lite cache.
En viktig sak är väl att SOC är betydligt billigare än sockel att tillverka.
Det är ju i praktiken få som verkligen byter CPU på sin sockel.
Så de med server kanske blir de enda?
Sen tycker jag nog att Geekbench är lite överskattad. Varför ingen ARM på SPEC2017?

Permalänk

2011 trodde vissa på ryktet

Men inte David Kanter:
ARM vs X86

Permalänk
Medlem
Skrivet av Pirum:

Glöm inte Photos, iTunes music/, Mail etc. Det mesta som medelsvensson behöver finns redan, om än inte lika fullödigt ännu som för Intel.

Går dessutom att vräka in kärnor i en laptop, prestanda i sig blir inget problem, inte kylning heller, de kan klockas högre än i telefoner eller plattor. Tror tveklöst det kan bli en övergång, Mac-andelen av Apple har väl aldrig varit mindre så om de skippar boot camp och en del specialiserade program så kan de ändå kränga mängder med arm-bookar.

Bäva windows säger jag. För mig som kör "Hackintosh" kanske det inte blir lika roligt, då jag misstänker att Apple går mot mer inlåsning a'la IOS även på desktop-OS.

Jag menar, för hemanvändare, vad kommer en ARM-macbook _inte_ att klara? Ok, spel portade från PC. Men det köper man väl ingen Mac för? MS Office? Kommer säkert att funka. Osv.

Det pratas mycket om proffsanvändare, men är det inte redan så att de flesta som arbetar inom musik, video, foto, tidningar, ändå trots allt numera arbetar mest i Windows? De som utvecklar för IOS/Mac kommer såklart inte att ha några problem med xcode osv i framtida ARM-macar.

Skickades från m.sweclockers.com

Apple är fortfarande populära hos proffsanvändare. Jag ser dock inte det som ett problem. Final Cut Pro och Logic som är populära kommer givetvis finnas till ARM. Adobes svit kan man nog i princip räkna med också. Jag tror inte Autodesk kommer kräva särskilt mycket övertalning. Redan här skulle vi alltså ha stora spelare med. Andra lär haka på. Utöver det kan man tänka sig att fler program kommer hitta från iPadOS till macOS.

En förutsättning som jag ser det är att Apple satsar tillräckligt mycket och lanserar intressanta produkter. Utvecklarna behöver bra förutsättningar och det måste finnas ett kundunderlag som gör det värt besväret.

Det bästa tror jag är om Apple på relativt kort tid fasar ut x86 helt. Lite så att det för utvecklarnas del blir ARM som gäller om man vill utveckla mot Apples ekosystem.

Permalänk
Medlem
Skrivet av DasIch:

Apple är fortfarande populära hos proffsanvändare. Jag ser dock inte det som ett problem. Final Cut Pro och Logic som är populära kommer givetvis finnas till ARM. Adobes svit kan man nog i princip räkna med också. Jag tror inte Autodesk kommer kräva särskilt mycket övertalning. Redan här skulle vi alltså ha stora spelare med. Andra lär haka på. Utöver det kan man tänka sig att fler program kommer hitta från iPadOS till macOS.

En förutsättning som jag ser det är att Apple satsar tillräckligt mycket och lanserar intressanta produkter. Utvecklarna behöver bra förutsättningar och det måste finnas ett kundunderlag som gör det värt besväret.

Det bästa tror jag är om Apple på relativt kort tid fasar ut x86 helt. Lite så att det för utvecklarnas del blir ARM som gäller om man vill utveckla mot Apples ekosystem.

Tror inte det är möjligt att fasa ut X86 på kort tid, då många som köpt nya Apple datorer vill ha fortsatta uppdateringar på både macOS och sina installerade program plus drivisar eller eventuella anpassningar i OS:et om det nu krävs.

Sen om Apple kommer byta till iOS eller döpa om det (har ju samma kodbas numera) eller kommer stanna kvar vid macOS är jag inte 100% säker på.
Men jag kan inte tänka mig att användare (speciellt inte semi eller helt proffs) kommer "köpa" ett slutet system, där du bara kan ladda program från app store och desvärre får ännu mindre möjligheter för inställningar. Många har ju redan klagat på att ett antal optioner tagits bort med åren, när nya versioner av macOS kom ut. Professionella och hardcore användare tror jag kommer inte "köpa"det
Sen har ju många video- musik och bildproducenter en herrans massa peripherals hemma som borde funka under nya arkitekturen ochså.
Man kan ju inte byta all hardware i hela musikstudion, bara för man byter dator.

Visa signatur

iMac "27" Late 2013

Permalänk
Medlem
Skrivet av Greyguy1948:

Men inte David Kanter:
ARM vs X86

Den är ju huvet på spiken, samma visa återkommer med några års mellanrum, x86 är död länge leve ARM. Nästan lika religiöst som AMD/Intel fanboys. Arkitekturerna har olika styrkor, allt handlar inte om legacy.

Permalänk
Medlem

Jag har alltid varit nyfiken på hur exempelvis x264 går på en ARM. Gällande CPU är det inte omöjligt att bräda Intel. Geekbench osv säger inte mig så mycket i praktiken.

Men GPU? De flesta mobiler grejar ju många spel ok, har hårdvarustöd för h264 och hevc, men de kan ju inte matcha Nvidia 3080 Ti liksom. Å andra sidan spelar väl de flesta fortfarande på typ 1060?

Och som sagt,få köper macbook för spel. En imacbook kommer att funka kanon för de flesta, och kan säljas med lägre pris. Skulle Apple vara riktigt elaka släpper de en billig imacbook utan pekskärm för typ $500, med liten ssd men mycket ram och cpu. För att öka ekosystemet även på datorsidan. Kommer att försvåra för MS om inte annat.

MS ja. Windows på ARM - funnits länge. Windowsplattor? Funnits i snart 20 år. Ändå är MS knappt ens trea på bollen känns det som. Hoppas ännu på att MS ska gå all in på ARM och förena desktop, plattor och telefoner. Så vi har 3 plattformar, inte 2 som nu. På just plattor är Android rätt B. Behövs konkurrens.

Om inte annat har MS ju förstört Windows användargränssnitt i onödan om de inte får in foten på bärbart/telefoner mer. Surface, ok, men det räcker inte.

Angående Apples förra övergång från ppc till Intel var det väl så att de sista ppc-burkarna inte var så bra köp, fick bara en större osx-uppgradering från 10.4 till 10.5 och inte de första 2 årens Intelburkar heller, nån stannade väl på Lion 10.7 ? Macbook Pro 2008-2009 kan dock fortfarande köra senaste OS om än med lite pill. Vår powerbook g4 från typ 2004, värstingmodell och maxad, var rätt trist att sitta med 2006 förresten. Vi fick den närapå till skänks av en släkting, så vi var glada visserligen. Kan bli många bistra miner vid byte, men förmodligen fler glada rätt snart.

Skickades från m.sweclockers.com

Visa signatur

ASUS P8Z68-v Pro i7 2600K@4.5, 32GB RAM, RX 580, 4K Samsung u24e590, Intel SSD, Seagate SSHD, LG BH16NS55 BD/RW, MacOS Monterey, Win 10+11, Linux Mint

Macbook Pro 2009, 8GB RAM, SSD, MacOS Catalina + Windows 7

Permalänk
Datavetare
Skrivet av Greyguy1948:

Men inte David Kanter:
ARM vs X86

David Kanter vet i de flesta fall vad han snack om, men läste du den där artikeln? Han sticket inte på något sätt under stolen med att det är gissningar.

Och viktigast av allt: han pratade där om 32-bitars ARM. Den största elefanten i rummet nämndes inte ens, ARMv7 och tidigare är alla 32-bit _only_. Förutom prestanda var precis alla försökt att bygga servers på ARMv7 DoA, varför skulle man gå tillbaka till 32-bit när allt annat redan 2011 hade gått till 64-bit?

Bl.a. nämns detta

Citat:
  1. ARM microproccesors are designed for lower performance and unlikely to match x86 performance in the next few years

  2. High-end ARM designs may not have a power efficiency advantage over x86

  3. Emulating x86 on ARM is necessary for compatibility and reduces performance and efficiency even further

  4. Thunderbolt I/O is probably not available on ARM

  5. No second source ARM vendors for key components such as the GPU

  6. Intel and AMD already do an excellent job competing to meet Apple’s needs

6. är inte helt sant längre. 4. är definitivt inte sant då Intel släppt specifikationen.

2. kan vi inte svara på då Kanter pratade om 32-bitars ARM. För Aarch64 (som är en "perfekt" ISA givet dagens krav, det kan man definitivt inte säga om 32-bitars ARM) har vi ju redan facit: high-end Aarch64 har definitivt en fördel över x86 här. Apples Iphone11 matchar de absolut snabbaste x86 CPUerna som drar >100 W i enkeltrådprestanda, en telefon ligger typiskt <5 W men peak är kanske det dubbla (och i GB4/5 är testerna korta nog för att kunna köra peak-power).

2. är också överbevisad från ARM själva då Cortex A77 har högre heltals IPC än någon x86 design, det samtidigt som den är ungefär hälften så stor per CPU-kärna jämfört med Zen2 på samma TSCM 7nm process.

Han skriver också

Citat:

It would be very expensive for Apple to design their own microprocessors – perhaps in the range of $200M or more. The entire notion is incredibly risky, given Apple’s lack of experience with end-to-end chip design, especially for high performance microprocessors and graphics.

$200 M är väl kaffepengar för Apple idag, oavsett så har de den CPU med i särklass högsta IPC idag (som de designat in-house) och de har sedan något år tillbaka även en egen GPU-krets.

Sedan är GPU ett icke-problem. PCIe fungerar lika bra på ARM, som på x86, MIPS, SPARC, PowerPC eller vad det nu må vara. Går ju att köra Nvidias, AMD och snart även Intels GPU-kretsar om man vill ha rejält med pulver.

Det är helt sant att tidigare har det alltid funnits för och nackdelar med alla ISA. MIPS har dålig koddensitet -> sämre cache-effektivitet, ARM må vara kompakt men det är otroligt komplext för att vara en RISC och vansinnesbeslutet att göra varje instruktion villkorad gjorde det rätt hopplöst att designa riktigt breda och djupa OoO-designer.

x86 har variabel längd på instruktion, vilket komplicerar avkodning (något både AMD/Intel parerar med micro-op cache men det kostar massor med transistorer), massor med implicita beroenden mellan instruktion som komplicerar design av väldigt bred back-end (men även här kompenseras det med massor av transistorer) och minneskonsistensmodellen definierades i en tid när två kärnor var exotiskt, man valde en modell som är lätt för människor att förstå men den är allt för strikt (vilket lämnar prestanda på bordet) för vad som i slutändan blev det alla stora programspråk valde som modell (går inte att ändra utan att bryta bakåtkompatibilitet).

Aarch64 och RISC-V är de enda ISA som designats i en tid när "ingen" längre skriver assembler, de är därför designade för att göra livet så lätt som möjligt för kompilator tillverkare. De designades efter man insåg att allt högre frekvens kommer inte fungera, så de flesta instruktioner har inga implicita sidoeffekter vilket möjliggör effektiva extremt breda mikroarkitekturer (Apples A13 är brutalbred, betydligt bredare än Zen2/Sunny Cove). De designades efter att den modell vi nu använder för multitrådade program definierades och har därför en perfekt match på instruktionsnivå för det.

Har själv levt i tron att ISA är irrelevant, det enda som spelar roll är mikroarkitektur. Det var också sant under ~3 decennier. Intel designade ju IA64 för att vara en "perfekt ISA" på sin tid men de råkade göra det när forskningen hade råkat gå in vad man senare insåg var ett återvändsgränd. Så tanken var rätt, men timing helt fel. Intel lär har bränt sig rätt mycket där, för därifrån har man definitiv hört att det enda som spelar roll är mikroarkitektur. Det var fel, det man aldrig tidigare lyckats med var att designa en ISA som eliminerade relevanta flaskhalsar och samtidigt inte skapade massa nya.

x86 har en gigantisk fördel: den är bakåtkompatibel men en ISA som varit extremt framgångsrik sedan slutet av 80-talet. Ovanpå det är det mest populära OSet på skrivbordet, Windows, extremt hårt knuten till x86. Så x86 kommer leva länge. Men vi borde se en övergång till Aarch64 både i bärbara och datacenter (AWS satsning borde rätt mycket garantera det, även Microsoft designar Aarch64 baserad infrastruktur för Azure men än så länge kan man som kund inte köra på sådana system).

Ur alla andra tekniska aspekter är Aarch64 lika bra eller bättre, man kommer alltid få mer prestanda med Aarch64 om man slänger en fix mängd transistorer på problemet. Utan sitt försprång i tillverkningsteknik är inte heller det en lösning för Intel och det kommer aldrig bli en lösning för AMD då de har samma fabriker som de andra.

Man kan hoppas att RISC-V "vinner" i slutändan då det är öppet. Men problemet är investeringar i programvara, framförallt grundläggande sådan som kompilatorer och grundläggande bibliotek... Apple har i princip löst detta för Aarch64 genom att lägga enorma summor på FoU där, det gynnade ju deras största kassako iOS-enheter. Amazon, som har ungefär lika mycket pengar, gör just en liknande insats på serversidan för Aarch64 då de antagligen kommer gynna en av deras kassakor (AWS är redan en kassako, får se om kunderna anammar Graviton2 när den rullas ut).

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk

Längd på pipeline

De flesta x86 är gjorda för att klara 4-5 GHz då de har ganska lång pipeline typ 15-18 steg.
Hur lång den är hos Apple vet jag inte.
Frågan är om någon klarar 4 GHz.
Vad kan vara rimligt i storlek?
En SOC med 6-8 stora kärnor & några små?

Permalänk
Medlem

Konsoller har aldrig inte bytt arkitektur förrän nu så så himla dålig kan inte x86_64 vara jämfört med ARM. Nintendo Switch är ju extremt lågpresterande i jämförelse med PS/XB.

Permalänk
Hedersmedlem

Om Apple väljer att växla över sina macOS-datorer till ARM-processorer så kommer programvaruleverantörerna att pliktskyldigt porta sina program till arkitekturen. Annars står de där utan möjlighet att sälja sina produkter till nya användare.

Förmodligen kommer något kompatibilitetslager också finnas, likt "Rosetta" som var ett PPC-kompatibilittslager för x86, back in the day.

Permalänk
Datavetare
Skrivet av Mordekai:

Konsoller har aldrig inte bytt arkitektur förrän nu så så himla dålig kan inte x86_64 vara jämfört med ARM. Nintendo Switch är ju extremt lågpresterande i jämförelse med PS/XB.

PS1 var MIPS, PS2 var MIPS.
NGC var PPC, Wii var PPC och Wii-U var PPC.
Alla handhållna Nintendo-konsoler har kört ARM även om Switch är den enda med Aarch64.
Så det har hänt tidigare.

Vad det gäller Switch var den systemkretsen primärt billig inte snabb. CPUn som används var gammal redan vid lansering plus att innan Cortex A76 hade ARM inte ens försökt att göra något annat än minimera priset och kretsstorlek. Swich har en Cortex A57, den har en mikroarkitektur som är jämförbar med Jaguar och Atom, inte med Core och Zen! Ställd mot Jaguar/Atom presterar den riktigt bra.

Mikroarkitekturfamiljen som inleddes med Cortex A76 hade varit i utveckling sedan 2013 med specifika målet att bli första generation lämplig för bärbara datorer och servers.

Om nu nästa generations konsoler får Zen2 @ 3,2 GHz kommer den CPU, sett till enkeltrådprestanda, inte bara vara slagen av Iphone utan också slagen av de Android-telefoner som precis är på väg ut med Cortex A77 (den har ~20 % högre heltals IPC jämfört med Skylake/Zen2). Finns garanterat massor med affärsmässiga bra skäl att köra x86 där, men på ett rent tekniskt plan hade A77 gett bättre prestanda och som bonus lämnat mer av strömbudget till GPU.

Är det inte uppenbart att det finns ett gap i prestanda hos x86_64 och Aarch64 när man har ungefär motsvarande teoretisk kapacitet i bredd och out-of-order djup? Apples A13 har ~80 % högre IPC jämfört med Zen2/Skylake, det är större fördel än vad Zen1 hade mot Bulldozer och större fördel än vad Skylake har över Goldmont+ (senaste Atom på 14 nm, den har i.o.f.s. IPC som matchar Core2).

Till viss del får mobil CPUerna IPC-boost från att ha en väldigt kort pipeline, det ger bättre IPC men begränsar maximal frekvens till strax över 3 GHz (gäller både Cortex A76/77 och Apples CPUer). Men finns exempel där samma ARM CPU ser upp till 30 % högre prestanda av att köra samma program i Aarch64 läge jämfört med 32-bitars ARM-läge. Aarch64 är mycket väldesignad, hoppas bara RISC-V visar sig vara lika bra om/när high-end designer börjar komma där!

Det sista kanske behöver något form av "bevis".

"64-bit ARM (Aarch64) Instructions Boost Performance by 15 to 30% Compared to 32-bit ARM (Aarch32) Instructions"

15 % högre JVM-prestanda (borde vara något liknande för .NET), 30 % var föga oväntat ett fall som involverade multitrådning.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av Traumklang:

Tror inte det är möjligt att fasa ut X86 på kort tid, då många som köpt nya Apple datorer vill ha fortsatta uppdateringar på både macOS och sina installerade program plus drivisar eller eventuella anpassningar i OS:et om det nu krävs.

Sen om Apple kommer byta till iOS eller döpa om det (har ju samma kodbas numera) eller kommer stanna kvar vid macOS är jag inte 100% säker på.
Men jag kan inte tänka mig att användare (speciellt inte semi eller helt proffs) kommer "köpa" ett slutet system, där du bara kan ladda program från app store och desvärre får ännu mindre möjligheter för inställningar. Många har ju redan klagat på att ett antal optioner tagits bort med åren, när nya versioner av macOS kom ut. Professionella och hardcore användare tror jag kommer inte "köpa"det
Sen har ju många video- musik och bildproducenter en herrans massa peripherals hemma som borde funka under nya arkitekturen ochså.
Man kan ju inte byta all hardware i hela musikstudion, bara för man byter dator.

Vad jag menar är att fasa ut x86 ur produktutbudet. Stödet för äldre produkter kan man såklart inte bara dumpa hur som helst. Det skulle inte bli bra.

En annan sak att tänka på är att det kommer bli konstigt för Apple om de ska ha kvar x86 på bärbara enheter. IMac och Mac Pro lär stå sig bättre men kollar vi på bärbara enheter har vi iPad Pro med 12X som i enkeltrådat är likvärdig med deras snabbaste MBP - A13 i iPhone är snabbare - och något snabbare än deras 13" MBP i flertrådat. (Sett till totalpoäng i GB5).

Nu pekar ryktena mot att Apple kommer lansera en ny iPad Pro till WWDC. Hittills har Apple hållit en bra utvecklingstakt med sina chip så det är inte osannolikt att ett A13X-chip kan mäta sig med eller slå deras i7-MBP's. Ett A14X skulle börja slåss mot i9;orna.

Här förenklar jag visserligen och höftar lite. Poängen, som är svår att komma ifrån, är att Apples chip är otroligt bra och deras snabbaste surfplattor börjar mucka rejält med gräl med deras MYCKET dyrare bärbara datorer. Om jag var Tim Cook skulle jag inte vilja ha det så.

Då är frågan om Intel kommer kunna ta en mer övertygande ledning i absolut prestanda till 2021 och om de kommer lyckas bibehålla en sån ledning? Lite tvek på den, känner jag. Jag tror Apple kommer gasa ifrån och då blir det konstigt att ha kvar Intel i deras premium premium-datorer, medan man har en surfplatta och billigare bärbar som är likvärdiga eller rentav snabbare.

Permalänk
Inaktiv

Om iPad drar ifrån Mac i prestanda vad händer då?

Ett scenario är att Mac aldrig går över till ARM, att man bara låter Mac långsamt minska för att till slut självdö medan iPad gradvis utvecklas till ersättaren för Mac, komplett med stöd för mus och tangentbord och extern skärm.

Skiftet till ARM görs långsamt och helt naturligt. Inget strul någonstans, man bara låter den inbördes konkurrensen göra jobbet.

En iPad paketerad som en Apple TV skulle vara en intressant ersättare till Mac mini (och borde fungera som spelkonsol).

Permalänk
Medlem
Skrivet av Yoshman:

PS1 var MIPS, PS2 var MIPS.
NGC var PPC, Wii var PPC och Wii-U var PPC.
Alla handhållna Nintendo-konsoler har kört ARM även om Switch är den enda med Aarch64.
Så det har hänt tidigare.

Vad det gäller Switch var den systemkretsen primärt billig inte snabb. CPUn som används var gammal redan vid lansering plus att innan Cortex A76 hade ARM inte ens försökt att göra något annat än minimera priset och kretsstorlek. Swich har en Cortex A57, den har en mikroarkitektur som är jämförbar med Jaguar och Atom, inte med Core och Zen! Ställd mot Jaguar/Atom presterar den riktigt bra.

Mikroarkitekturfamiljen som inleddes med Cortex A76 hade varit i utveckling sedan 2013 med specifika målet att bli första generation lämplig för bärbara datorer och servers.

Om nu nästa generations konsoler får Zen2 @ 3,2 GHz kommer den CPU, sett till enkeltrådprestanda, inte bara vara slagen av Iphone utan också slagen av de Android-telefoner som precis är på väg ut med Cortex A77 (den har ~20 % högre heltals IPC jämfört med Skylake/Zen2). Finns garanterat massor med affärsmässiga bra skäl att köra x86 där, men på ett rent tekniskt plan hade A77 gett bättre prestanda och som bonus lämnat mer av strömbudget till GPU.

Är det inte uppenbart att det finns ett gap i prestanda hos x86_64 och Aarch64 när man har ungefär motsvarande teoretisk kapacitet i bredd och out-of-order djup? Apples A13 har ~80 % högre IPC jämfört med Zen2/Skylake, det är större fördel än vad Zen1 hade mot Bulldozer och större fördel än vad Skylake har över Goldmont+ (senaste Atom på 14 nm, den har i.o.f.s. IPC som matchar Core2).

Till viss del får mobil CPUerna IPC-boost från att ha en väldigt kort pipeline, det ger bättre IPC men begränsar maximal frekvens till strax över 3 GHz (gäller både Cortex A76/77 och Apples CPUer). Men finns exempel där samma ARM CPU ser upp till 30 % högre prestanda av att köra samma program i Aarch64 läge jämfört med 32-bitars ARM-läge. Aarch64 är mycket väldesignad, hoppas bara RISC-V visar sig vara lika bra om/när high-end designer börjar komma där!

Det sista kanske behöver något form av "bevis".

"64-bit ARM (Aarch64) Instructions Boost Performance by 15 to 30% Compared to 32-bit ARM (Aarch32) Instructions"

15 % högre JVM-prestanda (borde vara något liknande för .NET), 30 % var föga oväntat ett fall som involverade multitrådning.

Fina siffror men i verkligheten har väl alla datorer baserade på ARM varit extrema besvikelser när det kommer till prestanda oavsett operativsystem?

Sedan säger du att PS1 och PS2 är samma arkitektur men ARM och Aarch64 är helt olika...

Sedan vet jag inte vad du menar med alla Nintendo handhållna, är Z80 en ARM-processor?

Permalänk
Datavetare
Skrivet av Mordekai:

Fina siffror men i verkligheten har väl alla datorer baserade på ARM varit extrema besvikelser när det kommer till prestanda oavsett operativsystem?

Sedan säger du att PS1 och PS2 är samma arkitektur men ARM och Aarch64 är helt olika...

Sedan vet jag inte vad du menar med alla Nintendo handhållna, är Z80 en ARM-processor?

Cortex A76, i form av Qualcomm SQ1, presterar helt i nivå med Intels i5 serie förutsatt att den kör Aarch64 och inte emulerar x86. Den har bättre perf/W.

Problemet är att Microsoft inte ens orkat fixa något så enkelt som MS Office till Aarch64, något man redan sedan tidigare har körandes på 32-bitars ARM. Kanske fortfarande blir en Surface Pro X för egen del, men det enda som inte gör den enheten totalt meningslös är att webbläsarna kör native Aarch64 (och allt mer går att sköta direkt i webbläsaren) samt att allt annat jag behöver går att köra via WSL2+Aarch64 Ubuntu. Har man viktiga program som måste köras via x86 emulering är det helt fel enhet, samma gäller för en eventuell MacBook med Aarch64: allt viktigt måste finnas som Aarch64 native och om något kan fixa det utanför Linux är det Apple.

PS1 och PS2 kör båda i 32-bitars MIPS, så ja? Vidare är 64-bitars MIPS, precis som 64-bitars x86, SPARC och PowerPC en strikt utökning av 32-bitars versionen (ska man vara riktigt petig var PowerPC 64-bitars från dag 1 och man gjorde en delmängd för inbyggda-system som var 32-bitars medan de övriga startade som 32-bitars och gick åt andra hållet).

ARM och Aarch64 har totalt olika binärkodning på sina instruktioner, finns också en rad fundamentala skillnader i design av ISA. På assembler nivå har man valt att namnge register snarlikt och använda samma namn så långt som möjligt, men det handlar verkligen om två separata ISA ungefär i nivå med MIPS och PowerPC. Hantering av villkorad körning är fundamental annorlunda i Aarch64, varianten som används i 32-bitars ARM ger otroligt kompakt kod, bra för extremt enkla CPUer som mikrokontrollers men riktigt dåligt om man vill bygga en högpresterande bred out-of-order CPU (något Aarch64 och rimligen RISC-V är superoptimerade för).

Slarvigt av mig kring handhållna, hade helt glömt bort de två första GameBoy/GameBoy Color som precis som du skriver körde en variant av Z80. Men det är ännu ett exempel när man hållit kvar vid samma CPU-arkitektur flera generationer.

GameBoy Advanced, DS, 3DS och New 3DS körde alla 32-bitars ARM (men de har alla olika CPU-modeller).

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk

Enkeltråd- SPEC2006

Smartphones in SPEC2006
Här ser vi att Apple dominerar stort framför allt pga sin stora cahe.
447.dealII är det enda benchmark där Apple inte vinner. Så om cache inte avgör kan A76 eller A77 vara snabbare.
Även några X86 är med på den breda grafen.

Permalänk
Datavetare
Skrivet av Greyguy1948:

Smartphones in SPEC2006
Här ser vi att Apple dominerar stort framför allt pga sin stora cahe.
447.dealII är det enda benchmark där Apple inte vinner. Så om cache inte avgör kan A76 eller A77 vara snabbare.
Även några X86 är med på den breda grafen.

Om stor cache vore förklaringen skulle allt var så enkelt, men varför har då Zen2 rätt identisk IPC som Skylake trots ~4 gånger större cache?

Större cache är något man tar till när i princip allt annat nått slutet på sina S-kurvor. Det är väldigt dålig prestanda/transistor-utdelning på detta (halva Zen2 består av L3$!!!). Apple har dock mycket större L3$ än Cortex A76/77, 16 MB mot 4 MB. Apple kör också med 128 kB L1$, vilket kan göras effektivt då Aarch64 stödjer 16 kB "page-size" och man vill alltid att cache-size / page-size <= antal "ways" i cachen. Med 4 kB "page-size" som x86 har blir det allt för strömtörstigt med stor L1$ alt. får man dålig latens p.g.a. TLB inte kan köras parallellt med L1$.

Apples Vortex (big-core i A12) och Lightning (big-core i A13) har en absolut gigantisk "front-end", den kan svälja upp till 7 instruktioner per cykel. AMD/Intels big-core har en kapacitet på 4 instruktioner per cykel (Intel kan få 5 i specifika fall), dessa CPUer kan bara nå sin fulla potential när de träffar mikro-ip-cachen då de kan plocka in 6 interna instruktioner (en x86 instruktion blir en eller flera interna instruktioner).

Cortex A76 är 4-wide i decode och dispatch. A77 har likt Zen2/Core en mikro-ip-cache, men av en lite annan anledning än att komma runt komplicerad avkodning av x86 instruktioner, A77 har denna cache enbart för att spara ström. CPUn är 4-wide i decode, men kan nu hantera 6 instruktioner vid träff i mikro-ip-cache.

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem

@Yoshman: PS2 hade 64-bitars, en processor med en massa stödprocessorer i sig (EmotionEngine), gick absolut inte att köra samma kod på den som på PS1, PS1-kod kördes native i sin original-CPU som hanterade IO åt PS2 i normalfallet.

Permalänk
Medlem

@Yoshman: Se detta benchmark borde visa hur överlägsen ARM64 är

från
https://www.pcworld.com/article/3453670/microsoft-surface-pro...

Permalänk
Datavetare
Skrivet av Mordekai:

@Yoshman: PS2 hade 64-bitars, en processor med en massa stödprocessorer i sig (EmotionEngine), gick absolut inte att köra samma kod på den som på PS1, PS1-kod kördes native i sin original-CPU som hanterade IO åt PS2 i normalfallet.

Ändrar inte att båda kan köra "ren" 32-bitars MIPS kod.

Xbox använder x86 (P3) men man kan ändå inte köra de spelen rakt av i XBO trots att den också är en x86. Till skillnad från PC läcker andra delar av konsolers HW upp i högre lager i långt större utsträckning då det ger bättre effektivitet.

Men är inte den här hästen död vid det här laget? Enda poängen var: det finns massor med andra exempel där man stannat på samma CPU-arkitektur. Vet egentligen inte ens vad som är viktigt med det, saker ändras och de som klarar av att hantera förändring tenderar bli vinnare.

SQ1 är rätt jämn med i5, fast den har den prestandan med ungefär hälften så många transistorer och ungefär halva effekten. Betyder det inget i din bok? Vad finns för förklaring där förutom x86_64 vs Aarch64, x86_64 har ändå fördel av att kompilatorer är lägre ut på slutet av sina S-kurvor vad det gäller optimering då så många jobbat så länge med detta.

Och varför lägger AMD, och i Willow Cove även Intel, så mycket av sin transistorbudget på mer cache när Apple visat brutal IPC med en 7-wide Aarch64 design? Kan det kanske, kanske vara så att det inte går att skala x86_64 till en sådan bredd och samtidigt behålla någon form av effektivitet?

Visa signatur

Care About Your Craft: Why spend your life developing software unless you care about doing it well? - The Pragmatic Programmer

Permalänk
Medlem
Skrivet av Yoshman:

SQ1 är rätt jämn med i5, fast den har den prestandan med ungefär hälften så många transistorer och ungefär halva effekten. Betyder det inget i din bok? Vad finns för förklaring där förutom x86_64 vs Aarch64, x86_64 har ändå fördel av att kompilatorer är lägre ut på slutet av sina S-kurvor vad det gäller optimering då så många jobbat så länge med detta.

Sen kan man också titta på vad lite fler transistorer gör.
Surface Pro X:
https://browser.geekbench.com/v5/cpu/1310217

Ipad Pro (2018):
https://browser.geekbench.com/v5/cpu/1311906

Permalänk
Medlem
Skrivet av Yoshman:

Ändrar inte att båda kan köra "ren" 32-bitars MIPS kod.

Xbox använder x86 (P3) men man kan ändå inte köra de spelen rakt av i XBO trots att den också är en x86. Till skillnad från PC läcker andra delar av konsolers HW upp i högre lager i långt större utsträckning då det ger bättre effektivitet.

Men är inte den här hästen död vid det här laget? Enda poängen var: det finns massor med andra exempel där man stannat på samma CPU-arkitektur. Vet egentligen inte ens vad som är viktigt med det, saker ändras och de som klarar av att hantera förändring tenderar bli vinnare.

SQ1 är rätt jämn med i5, fast den har den prestandan med ungefär hälften så många transistorer och ungefär halva effekten. Betyder det inget i din bok? Vad finns för förklaring där förutom x86_64 vs Aarch64, x86_64 har ändå fördel av att kompilatorer är lägre ut på slutet av sina S-kurvor vad det gäller optimering då så många jobbat så länge med detta.

Och varför lägger AMD, och i Willow Cove även Intel, så mycket av sin transistorbudget på mer cache när Apple visat brutal IPC med en 7-wide Aarch64 design? Kan det kanske, kanske vara så att det inte går att skala x86_64 till en sådan bredd och samtidigt behålla någon form av effektivitet?

Min poäng var ju att konsoltillverkarna inte drar sig för att dramatiskt ändra arkitektur och trots detta så väljer både Microsoft och Sony x86_64 över Aarch64, borgar för att Aarch64 inte är så överlägsen som du vill göra gällande, speciellt inte i mer processorintensiva applikationer.