Pourquoi la puce M1 d'Apple est-elle si rapide?

L'expérience de l'utilisation de nouveaux coquelicots avec M1 commence à parsemer le i. Ces puces sont rapides. Très vite. Mais pourquoi? Quelle est la magie?





J'ai regardé une vidéo sur Youtube où l'auteur a acheté l'iMac l'année dernière avec la configuration maximale. Une machine avec plus de 40 Go de RAM lui coûte environ 4000 $. Il a regardé avec incrédulité tandis que son iMac hyper cher était réduit en miettes par un tout nouveau Mac mini avec un M1 à bord, qui coûtait environ 700 $.





, , 1 Intel . Mac . , ?





, . , Apple 1. :





  • , 1 ?





  • Apple , ?





  • Intel AMD , ?





, . , Apple , . , “1 (very wide instruction decoders)”, “ (reorder buffer, ROB)” .. , .





, “What Does RISC and CISC Mean in 2020?“. , CPU, :





  • ISA





  • (Pipelining)





  • (load/store)





  • vs -





, , .





CPU?

, Intel AMD, CPU. “RISC vs CISC”, , .





Puce RISC très simple, pas M1.  Les instructions passent de la mémoire le long des lignes bleues aux registres.  Le décodeur détecte ce qu'est chaque instruction et active différentes parties du CPU à travers les lignes rouges.  ALU ajoute et soustrait des nombres des registres.
RISC , 1. . , , CPU . ALU .

CPU - , , , - ALU. ALU , . , CPU. , , . , RISC , 1 :





load r1, 150
load r2, 200
add  r1, r2
store r1, 310
      
      



r1



r2



- , . RISC , . , CPU. . 150 r1



, 200 r2



. add



. 





Une vieille calculatrice mécanique avec deux registres: un registre pour stocker le résultat (l'accumulateur) et un registre pour les informations d'entrée.  Les processeurs modernes ont plus d'une douzaine de registres et ils sont numériques et non mécaniques.
: (the accumulator) . CPU , .

. , - , , . . - “”, .





M1 -

, : 1 - CPU. , . CPU - . , 1 - . CPU, GPU, , / , . (system on the chip, SoC).





M1 est un système sur puce.  Cela signifie que tout ce dont vous avez besoin pour votre ordinateur est déjà sur la puce.
1- . , - .

, - Intel AMD - . .





  . , CPU,  ,  /,               .
. , CPU, , /, .

, Intel AMD . “” . , , , . CPU.





 .
.

: CPU. - : .





Apple

, , Apple : . , , , , , CPU .





. GPU - . Nvidia AMD , .





Apple . , 1 :





  • CPU - “” .





  • GPU - , .





  • ISP - .





  • (digital signal processor, DSP) - , , .





  • (Neural processing unit, NPU) - , AI.





  • (Video encoder/decoder) - .





  • (Secure Enclave) - , .





  • (Unified memory) - .





, , 1, . , , . Mac mini 1 , , iMac Intel 1. (heterogeneous) : Apple M1 foreshadows Rise of RISC-V.





  -    ,   - .
- , - .

(UMA) Apple?

, “ (Unified Memory Architecture, UMA)”. , .





. . , “ ”, “ ”. . , . , “, ”. CPU .





CPU     ,     .
CPU , .

CPU GPU -. : CPU , , . , .





      .  ,  “”.
. , “”.

, , . , - , . -, , .





CPU GPU, . GPU “”, . , GPU CPU. “” .





- GPU. CPU, . , : . , .





GeForce RTX 3080.
GeForce RTX 3080.

. : - CPU, , PCIe. . , .





(UMA) Apple . :





  1. CPU GPU. . , .





  2. Apple , . (low latency and high throughput). , .





  3. Apple GPU, . ARM , , Intel AMD.





, UMA - , . , , -, , CPU GPU. , , Nvidia , . Nvidia “ ” - , CPU GPU. Apple Nvidia , .





, Apple. , . Apple , SSD .





  Apple        .    -   ,    Thunderbolt 3.     ,          1.
Apple . - , Thunderbolt 3. , 1.

SoC “”, Intel AMD ?

Apple , ? , . -. AMD , “ ”, Accelerated Processing Unit APU, CPU GPU .





APU  AMD Ryzen. CPU  GPU (Radeon Vega)    ,         -, IO    .
APU AMD Ryzen. CPU GPU (Radeon Vega) , -, IO .

, AMD . SoC - . HP Dell. : , .





ARM , , . ARM SoC , . GlobalFoundries TSMC, AMD Apple.





Usine de fabrication de semi-conducteurs TSMC à Taiwan.  L'usine produit des puces pour AMD, Apple, Nvidia et Qualcomm.
TSMC . AMD, Apple, Nvidia Qualcomm.

, - Intel AMD. , . , , CPU .





. SoC . . , CPU, , IO SoC. Intel, AMD, Nvidia SoC Dell, HP .





, Intel AMD SoC. ? . Intel, AMD, Microsoft, .





Apple - . , , Core ML . , Core ML CPU Apple (Neural Engine).





CPU

(heterogeneous computing) - . 1, Firestorm, . ARM , Intel AMD.





Firestorm Intel AMD - Ryzen. , . , Firestorm , . , :





  1. .





  2. .





80- . , . - - . . , , .





, . “ ”, . , .





“ ”?

, :





  • , .





  • .





, - (thread) . . , , , - . CPU . - , . “” .





, . . . - , -:









  • , - .





. .





, . , . , - : - . , . .





Le processeur ARM Ampere Altra Max a beaucoup de cœurs physiques à bord et a été spécialement conçu pour le cloud computing.
ARM Ampere Altra Max .

ARM 128- . “”. , 1 , . Are Servers Next for Apple?.





Apple . , - . , . .





. , , 128 - . , .





Out-of-Order

, . Out-of-order execution () , . : Very Long Instruction Word Microprocessors.





, . , . , . , . , , . , . , 1 , 100 .





Robots dans l'entrepôt de la boutique en ligne Komplett.no, Norvège.
- Komplett.no, .

: , , . . . , .





(databus). , . . , .





, . Out-of-Order-execution. , .





01: mul r1, r2, r3    // r1 ← r2 × r3
02: add r4, r1, 5     // r4 ← r1 + 5
03: add r6, r2, 1     // r6 ← r2 + 1
      
      



- , . , , . . , .





, . , . , add r4, r1, 5



r1



, . , CPU : - , - .





CPU , , , - , . , . , , .





, : , - , , CPU Out-of-Order-Execution. .





OoOE 1 . , Intel AMD, , Apple. , .





ISA -

. , , ISA. , x86, ARM, PowerPC, 68K, MIPS, AVR .





x86 :





MOV ax, 24
      
      



x86 ax



, bx



, cx



dx



( , CPU). ARM :





LDR r0, 24
      
      



Intel AMD x86 , 1 Apple - ARM. , . - (micro-ops, μops). Out-of-Order .





? , . , ARM 32 ( 32 : 0 1), - . .





01: mul r1, r2, r3    // r1 ← r2 × r3
02: add r4, r1, 5     // r4 ← r1 + 5
03: add r1, r2, 1     // r1 ← r2 + 1
      
      



, 01 03 . r1



. 03 , 02, . , . -, .





-, . ARM - .





CPU - , - - . ISA . , -. “” , .





CISC , -, . . RISC . , ARM -. .





Intel AMD 1?

, , , ? , - Apple Intel AMD? , -. , , . , . -. , , (decoder).





, -, - 1. “” Intel 4 . 1 - 8 - , . . , 1 , .





Intel AMD ?

“” RISC , 1 ARM . , x86 1 15 . RISC - 4 . ? , , “” , , .





, x86 , . , . Intel AMD : , . , . , - . Apple . , 4 - Intel AMD.





, 1 Firestorm , Intel AMD, .





, CISC -. 86 -, ARM - -. 4 86 - , 8 CPU. , . x86 CISC , -. , -.





, 86 Intel AMD. , 15 - , , .





AMD Zen3 , ?

, AMD Zen3 , 1 Firestorm. - Zen3 5 , Firestorm 3.2 . Zen3 Firestorm, , 60%.





Apple ? - . Apple - , Intel AMD. , Firestorm Zen3, Zen3 . Apple .





Apple , , , .





, AMD Intel :





  • -, (heterogenous computing) SoC .





  • CISC , Out-of-Order.





, . , CPU. , . Intel , , GPU SoC.





, . . , Amazon Ampere 128- . , .





Intel AMD, Apple , , . , . , . , , Apple, , , .








All Articles