¿Por qué el chip M1 de Apple es tan rápido?

La experiencia de usar nuevas amapolas con M1 comienza a salpicar la i. Estos chips son rápidos. Muy rapido. ¿Pero por qué? Cual es la magia?





Vi un video en Youtube donde el autor compró el iMac el año pasado con la configuración máxima. Una máquina con más de 40 Gb de RAM le costó alrededor de $ 4000. Observó con incredulidad cómo su iMac hiper costoso volaba en pedazos por un nuevo Mac mini con un M1 a bordo, que costaba alrededor de $ 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”, , .





Chip RISC muy simple, no M1.  Las instrucciones pasan de la memoria a lo largo de las líneas azules a los registros.  El decodificador detecta qué es cada instrucción y activa diferentes partes de la CPU a través de las líneas rojas.  ALU suma y resta números de registros.
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



. 





Una vieja calculadora mecánica con dos registros: un registro para almacenar el resultado (el acumulador) y un registro para la información de entrada.  Las CPU modernas tienen más de una docena de registros y son digitales, no mecánicas.
: (the accumulator) . CPU , .

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





M1 -

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





M1 es un sistema en un chip.  Esto significa que todo lo que necesita para su computadora ya está en el chip.
1- . , - .

, - Intel AMD - . .





Un ejemplo de placa base.  La memoria, la CPU, la tarjeta gráfica, los controladores de E / S, la tarjeta de red y muchos otros componentes están conectados a la placa base para comunicarse entre sí.
. , 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.





    TSMC  .     AMD, Apple, Nvidia  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 . - , . “” .





, . . . - , -:









  • , - .





. .





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





El procesador ARM Ampere Altra Max tiene muchos núcleos físicos a bordo y fue diseñado específicamente para la computación en la nube.
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 en el almacén de la tienda online Komplett.no, Noruega.
- 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