Skrivet av Fulci:
Skulle det vara möjligt för säg AMD att göra en ARM lösning med hyfsad x86 kompatibilitet utan att offra för mycket? Eller är de för olika? T.ex. en CCD med ARM och en CCD med x86? Jag spånar friskt här. Det blir förstås en högre kostnad.
Vill man ha x86 kompatibilitet på en annan mikroarkitektur är det enda vettiga att göra det i programvara, d.v.s. exakt vad Apple gör med Rosetta 2 och Windows on ARM gör (x86_64 emulering kommer till Windows detta kvartal, Microsoft primära problem är att de lanserade sin ARM64 innan de var klara på programvarusidan).
Skrivet av Hevin:
Man kommer inte långt med single core prestanda.
Det är imponerande resultat, förstå mig rätt, men det handlar mer om x86 vs ARM och inte AMD/Intel vs Apple.
Min poäng var att de slår inte någon i multi-core än, och det är inte självklart att de kommer komma ifatt där väldigt lätt. Det skalar nämligen inte på det sättet.
Sen tror jag inte folk riktigt förstår att program inte bara stödjs automatiskt på ARM och med bra prestanda. Det är inte bara mjukvara ens. Om dessa CPU:er hade sålts löst som för en PC, så hade du inte bara kunnat sätta ihop en dator och koppla in ett AMD eller Nvidia grafikkort eller något. De stödjs inte av ARM. Emulering som Apple pushar mycket, får inte magiskt någon bra prestanda.
Så det handlar mindre om hur snabbt Apple jobbar, och mer om hur alla utvecklare av mjukvara som måste jobba hårt. De kommer inte fokusera 100% på ARM och bara släppa x86 där typ alla användare är.
Att x86 för spel kommer leva vidare länge har inte bara med konsollerna. Ser inte att majoriteten av spel finns för ARM inom de närmsta 8 åren.
Hade det bara handlat om aggregerad prestanda skulle x86 ha varit död och begraven för länge sedan. Aggregerad prestanda handlar nästan bara om en enda sak: perf/W. Ju bättre perf/W, ju fler kärnor kan man trycka in i samma krets då det idag är effektbudget som stoppar skalningen av CPUer mer än något annat.
Varför dödade då inte t.ex. SPARC och POWER x86? Båda dessa har haft massor med modeller som fått x86 server-kretsar att se ut som leksaker sett till aggregerad prestanda.
Därför att de aldrig kunnat slå Intels x86 på fingrarna sett till prestanda per kärna. Även på serversidan är väldigt mycket begränsat av någon kritisk del, kritisk del som definitionsmässigt är något man inte kan snabba på genom att slänga fler kärnor på problemet.
Vi har sett flera 32-bitars ARM server-kretsar crash-and-burn. Alla dessa har haft helt OK aggregerad prestanda, långt bättre perf/W än x86, men de har inte varit i närheten sett till prestanda per kärna.
AMDs Zen är inte primärt framgångsrik för att de har fler kärnor än prismässigt motsvarande Intel, Zen är en framgång för man lyckades komma tillräckligt nära Intel i prestanda per kärna för att med Zen3 faktiskt passera.
Så det kritiska med Apples ARM64 är just dess enkeltrådprestanda. Då perf/W är heltalsfaktorer bättre än x86, samtidigt som antal transistorer per CPU-kärna i jämförbar med high-end x86 handlar resten bara om att faktiskt bygga en krets med tillräckligt många kärnor för att även ta över ledartröjan i aggregerad prestanda. Apple verkar inte intresserad av servermarknaden, men redan idag lär Ampere computings 80-kärniga Altera (ARM Neoverse N1 baserad) slå alla existerande x86 CPUer sett till aggregerad prestanda.
För Apples del får vi vänta till de släpper sin ARM64 för MacPro, min gissning är att när den lanseras spelar det inte längre någon roll vad vi jämför i form av desktop CPUer.
Skrivet av shogun-r:
Så enligt dig kan man säga att x86 är körd?
Är ju lite märkligt i så fall att Intel och AMD ser ut att klamra sig fast. Tror dom att man inte kommer överge dom? Eller har dom inget val än att fortsätta mot avgrunden? Eller lever dom i förnekelse?
Kan man ju bara spekulera i men hade varit intressant att veta vad Intel/AMD tycker om utvecklingen och hur dom tänker svara mot den.
Sen är väl bärbart lite skillnad mot stationärt? I bärbara har du ytan att ta hänsyn till vilket du inte har på samma sätt i stationära.
Enligt något rykte jag såg så kommer kretsen till Alder Lake bli större till ytan än tidigare...
På lite längre sikt ser det rätt mörkt ut för x86, å andra sidan brukar alla imperier falla bara man har tillräckligt lång tidshorisont.
På kortare sikt: Windows är tyvärr en rätt rejält garant för att x86 kommer vara relevant ett bra tag till.
Skrivet av Anders Andersson:
Visst Apples M1 är väldigt snabb och imponerande men
Single core
1719 vs 1590 (i7-1185G7) alt 1230 (Ryzen-4700U)
Multi core
6967 vs 6060 (i7-1185G7) alt 6300 (Ryzen-4700U)
Är väldigt långt i från x2,5 i prestanda, om M1 hade varit så snabb som Apple sa skulle den haft ~3000-4000 i single core.
Men man kanske jämförde med Macbooks från 2017-2018?
Om något så tycker jag multi core prestandan är mer imponerande än single core med tanke på så lite TDP som M1:an har.
Sedan har x86-x64 mycket kvar att ge. Det är trots allt en instruktionsuppsättning, inte en hårdvarudesign.
x86-x64 innehåller en stor mängd instruktioner (CISC liknande) både gamla och nya, olika storlekar 1-15 bytes som Yoshman sa. Detta gör att avkodning och parallell körning av dessa instruktioner blir mera komplicerat än t ex ARM64.
Men Intel ligger på 10nm inte 5nm, och om Intel designade en CPU på 5nm med dubbelt antal transistorer per kärna så skulle Intel kunna lägga in flera exekveringsenheter, bättre instruktionsavkodning, större cache m.m. och prestandan skulle bli betydligt bättre. Det samma gäller så klart AMD som också kommer att komma med en mobil variant av 5000 serien som kommer ha bra drag i multi core och bra single core prestanda.
Sedan är de program (Visual Studio, SQL Server, Vmware, Spel m.m.) jag primärt kör på Windows plattformen eventuellt Linux och då spelar det ingen roll att Apple är 8% snabbare i CPU prestanda.
De prestandasiffror Apple nämner är till att börja med PR, så "bästa fall". Det man jämför mot är samma typ av dator, modellen innan i instegskonfiguration. Så 13" MBP med M1 jämförs med sista Intel-baserade 13" MBP med i5, etc.
Bl.a. Intel har tidigare, med fog givet prestandaresultaten, alltid påpekad att allt som betyder något är mikroarkitektur medan ISA bara är ett sätt av flera att representera en visst program. Dels har ingen lyckats göra en ISA som är lika bra eller bättre på varje punkt ställd mot x86 (nu har vi två sådana i ARM64 och RISC-V), dels kunde Intel alltid kompensera för ineffektiviteten då man under väldigt lång tid låg 0,5-2 noder före alla andra.
ARM64 (som är väldigt annorlunda från 32-bitars ARM) är bevisat bra. Apple har ungefär lika många transistorer per kärna som AMD/Intel, men deras design utför nästan dubbelt så mycket per cykel. Arm har bl.a. Cortex A76 som utför lika mycket som Zen2/Skylake, fast där varje kärna tar ~1/3 av kretsytan mot Zen2 på samma TSMC 7 nm.
D.v.s. det är ingen liten skillnad, det är en till två heltalsfaktorers fördel för ARM64. I teorin borde RISC-V kunna vara ungefär lika effektiv som ARM64, men innan vi exakt förstår varför ARM64 verkar så brutalt effekt för att skapa designer med riktigt hög absolut prestanda (32-bitars ARM har aldrig nått i närheten av x86 i absolut prestanda även om perf/W varit lysande) så är det svårt att veta om RISC-V också kommer visa samma egenskaper. Det finns många likheter mellan ARM64 och RISC-V, men finns och ett par skillnader som kan vara relevanta.