Skrivet av kelthar:
Hela ISA:n till ARM är designad utifrån ståndpunkten att den ska vara så energieffektiv som möjligt. Det är först på senare år som x86 ens tänkt tanken på effektivitet. På samma tillverkningsnod så kommer ARM64 dra mindre ström och så är det bara. ARM64 har fast instruktionsstorlek vilket gör att de inte behöver parsas så som det behövs på x86. Det gäller varenda instruktion som skall köras, hela tiden.
Edit: Det är en gammal myt - https://chipsandcheese.com/p/arm-or-x86-isa-doesnt-matter
Ta ett steg tillbaka och fundera på vad det skulle betyda att det är är "en gammal myt"...
Tittar man på SPECint/SPECfp (eller GB6 för del delen, men långt färre har några invändningar om man använder SPEC) så är numera Intel/AMD inte längre på top-3 vad det gäller perf/MHz för high-end CPUer. De är passerad av Apple, Qualcomm och numera även Arm (i Apples fall har redan M1 högre perf/MHz än någon idag existerade x86).
Det som nu även hänt under 2024 är dessa tre även passerat Intel/AMD i absolut prestanda om man bara tittar på marknaden för bärbara datorer (säg effekt <=30 W).
Endera har Intel/AMD permanent fredagsöl på arbetstid, eller så finns det rimligen något som håller dem tillbaka på ett tekniskt plan. Enda glasklara separation här är ISA.
Och om nu ISA inte är viktig, varför är då en av de frågor man vill lyfta i denna grupp just relaterade till största förändring av ISA någonsin för x86? Utöver det handlar väldigt mycket om att "städa gammalt junk" från x86.
Misstaget jag tror det är extremt lätt att göra här är att innan ARM64 hade ingen lyckats göra en ISA som är så fundamentalt mycket bättre än samtida aktuella ISA att det spelade en avgörande roll. Ställd mot MIPS, PowerPC, 32-bit Arm, etc så finns både fördelar och nackdelar ställd mot. x86/x86_64.
ARM64 är på varje punkt lika bra eller bättre än x86_64. Enda fördel som kunna skönjas är ett par speciallfall som ser stor nytta av AVX-512, men inte ens den fördelen finns kvar ställd mot ARM64 modeller som kör ARMv9 (vilket Apple M4 och Arm Cortex X925 använder).
Skrivet av star-affinity:
Intressant. Tycker nog jag vill höra @Yoshman kommentera detta.
Redigering:
Heh, lyckades få ChatGPT att ändra sig lite genom att mata den med artikeln @kelthar länkade till:
You’re right to point out the inconsistency. My earlier explanation focused on the classic distinction between RISC (ARM) and CISC (x86), which historically emphasized simpler, more efficient instructions in ARM leading to lower power consumption. However, as the article and modern research highlight, today’s performance and energy efficiency are much more influenced by microarchitectural choices (like cache design, branch prediction, etc.) than by the ISA itself. The power and efficiency differences between ARM and x86 today stem more from design goals and optimizations, not inherent ISA characteristics.
In short, while ARM’s RISC heritage may have offered advantages in the past, the gap has largely closed due to advancements in x86 architecture.
ChatGPT har på sätt och vis både rätt och fel här.
Rätt i att mikroarkitektur är långt viktigare än ISA när det kommer till perf/W vid en given frekvens.
Det kursiva är kritiskt här. För där ISA, specifikt ARM64 (och det Intel ska försöka kopiera till x86 med APX), spelar roll är att man kan nå samma absoluta prestanda genom att bygga en betydligt "bredare" mikroarkitektur fast köra på längre frekvens. Effekt skalar snabbare med frekvensen än med antal transistorer.
Men har under 2024 sett både Zen 5 och Lion Cove fallit rätt platt i prestandaökning och den huvudsakliga förändringen har varit att man byggt på "bredden". Samtidigt ser uppenbarligen Arm (Cortex X4->X925) och Apple (M3->M4) fortfarande rätt rejält utväxling på ökad bredd, X925 är förvånansvärt nära Apple M3 i perf/MHz (och den har passerat Qualcomm Oryon som i sin tur är en bra bit för Intel/AMD).
Intel slog nog de flestas förväntningar med perf/W i Lunar Lake. Man är klart förbi AMD Strix Point.
Fast Intel använder TSMC N3B för att nå dit. Man matchar Snapdragon X i perf/W, de använder TSMC 4 nm.
Intel är rätt långt efter både Strix Point och Snapdragon X i MT prestanda. Rent generellt är 12C Strix Point och 12C Snapdragon X väldigt snarlik i ST och MT prestanda, det på samma TSMC 4 nm process. Men Snapdragon X når dit med färre transistorer än AMD och med bättre perf/W!
Intel/AMD har rimligen lika kompetenta kretsdesigners som Qualcomm, Apple och Arm. Så var kan rimligen skillnaden ligga då?
Intel/AMD inser att de är på väg att hamna i backspegeln. Tyvärr är det rätt mycket tröghet i marknaden, så spelar de korten rätt kan vi få dras med x86 och därmed sämre prestanda/effektivitet än nödvändigt under rätt lång tid framåt...