Las Diferencias Entre ARM e Intel x86-64

Diferencia Entre Intel Arm Destacada

Con los chips ARM ahora omnipresentes en laptops de alto rendimiento y servidores perimetrales, es legítimo preguntarse si estos nuevos dispositivos valen su próxima compra. Es hora de entender las diferencias técnicas entre los procesadores ARM y los predecesores x86-64 más potentes que anteriormente dominaban el mercado de chips sin obstáculos.

Tabla de Contenidos

  • ¿Qué Significa x86-64?
  • Conjuntos de Instrucciones
  • Consumo de Energía
  • ¿Debería Comprar un Sistema ARM o x86?

Lee: ¿Puede ARM eventualmente reemplazar la CPU x86 en laptops? ¡Vamos a averiguarlo!

¿Qué Significa x86-64?

Los procesadores Intel que se encuentran en computadoras de escritorio y laptops a veces se denominan “procesadores x86”. La arquitectura de 64 bits que utilizan todas las computadoras modernas hoy en día está basada en el modelo x86, que ahora se denomina “x86-64”.

Todo esto puede sonar un poco confuso, pero ayuda a explicar por qué hay dos carpetas diferentes de Archivos de Programa en Windows.

X86arm Archivosdeprogramas

Para simplificar, todas las aplicaciones de 32 bits van en la carpeta x86 y las de 64 bits van en la otra carpeta. Esto ha sido una convención desde que Microsoft lanzó su versión de Windows XP de 64 bits en 2001.

Para simplificar un poco las cosas, nos referiremos a “x86-64” como “x86”, ya que hay suficientes similitudes entre chips de 32 bits y de 64 bits para agruparlos.

La etiqueta “x86” proviene del tatarabuelo del procesamiento moderno, un microprocesador creado por Intel llamado 8086. Este chip de 16 bits operaba bajo un conjunto de instrucciones que todavía es utilizado en gran parte por los procesadores modernos hoy para realizar tareas informáticas avanzadas.

¡Todo, desde tu editor de texto hasta un software avanzado de renderizado de video, todavía tiene la capacidad de operar bajo una arquitectura que nació en 1978!

Desde el lanzamiento del microprocesador 8086, Intel continuó utilizando la convención de nombres para modelos futuros como el 80286 y 80386 hasta que rompió con la tradición al lanzar la serie Pentium. Sin embargo, todavía rendimos homenaje a esos chips antiguos al categorizar todos los procesadores subsiguientes que utilizan su conjunto de instrucciones como “x86”.

Incluso los procesadores de 64 bits más modernos que AMD lanzó por primera vez en la serie Opteron en la década de 2000 tienen la misma designación, ya que la abrumadora mayoría de los procesadores de 64 bits en sistemas de escritorio y servidores siguen apoyándose en el pilar del ahora humilde 8086.

Conjuntos de Instrucciones

Toda la funcionalidad de un procesador se basa en lo que se llama un conjunto de instrucciones. Este es un conjunto de operaciones rudimentarias cableadas que un chip puede realizar. Cada instrucción le dice al chip que realice operaciones sencillas como matemáticas básicas y mover datos. En el fondo de cada bit de código en cada programa que ejecutas en tu máquina hay una capa que se comunica con el procesador. Esta capa también utiliza su propio código conocido como lenguaje ensamblador, que se traduce un paso más allá en las instrucciones base que a menudo se denominan código de máquina o lenguaje de máquina.

El IHS de un Intel i386

Aquí es donde llegamos a la diferencia fundamental entre los chips ARM y x86.

Los chips x86 utilizan computación de conjunto de instrucciones complejas (CISC), mientras que los chips ARM utilizan computación de conjunto de instrucciones reducidas (RISC). Mientras que los chips CISC intentan poner más “trabajo” en una única instrucción sacrificando ciclos de reloj para lograr esta tarea, los chips RISC tienen (como su nombre indica) un conjunto de instrucciones mucho más pequeño que descompone todo en pasos más simples que se pueden ejecutar en un solo ciclo de reloj.

CISC vs. RISC

Si un chip CISC necesita multiplicar dos números, podría ejecutar un único comando: MULT 2, 3. Este único comando cubrirá la carga de números desde la memoria, multiplicarlos y almacenar el resultado en la ubicación de memoria correcta. Un chip RISC realizando la misma operación requeriría muchos más pasos. Primero, una instrucción LOAD para mover los números de los registros a la unidad de ejecución. Luego, una instrucción PROD para multiplicar los números. Finalmente, una instrucción STOR para colocar el resultado en el registro correcto.

Apple M1 SoC montado en un MacBook

Aunque el chip CISC puede parecer más eficiente porque sus comandos parecen más simples, ten en cuenta algunas diferencias importantes:

  • Primero, los chips CISC ejecutan comandos en múltiples ciclos de reloj, mientras que cada instrucción en un chip RISC se ejecuta en un solo ciclo de reloj. Debido a esto, nuestro hipotético comando MULT podría ejecutarse en la misma cantidad de ciclos que el conjunto de instrucciones RISC que realiza la misma tarea.
  • Segundo, todas las instrucciones y lógica de CISC necesitan ser almacenadas en transistores. Los chips RISC pueden usar menos transistores porque necesitan almacenar menos instrucciones.
  • Tercero, el número menor de transistores requerido por RISC permite un menor consumo de energía.

Hay algunas ventajas para CISC. Primero, la computadora no necesita hacer mucho trabajo para convertir de un lenguaje de programación a nivel humano como C a lenguaje ensamblador a nivel de procesador. De hecho, el comando MULT mencionado anteriormente es muy similar al comando de C foo = foo * bar.

Los chips RISC piden al compilador que haga mucho más trabajo para llevar el código al lenguaje ensamblador. Los chips CISC también pueden realizar sus operaciones directamente en la memoria del sistema, mientras que los chips RISC deben extraer datos de la memoria a los registros del procesador antes de trabajar con ellos.

En un concurso de rendimiento cara a cara entre los dos, en lo que a los consumidores respecta, no hay un ganador claro. Sin embargo, RISC tiene un as más bajo la manga para realmente obtener ventaja sobre CISC.

Consumo de Energía

Entre CISC y RISC, no hay absolutamente ninguna competencia cuando se trata de uso de energía. RISC categoriamente se lleva la corona aquí. Un conjunto de instrucciones reducido proporciona una huella de oblea reducida, haciendo el chip más pequeño y, por lo tanto, menos hambriento de energía.

Componentes internos de una fuente de alimentación ATX tradicional

Los chips más pequeños con menos componentes microscópicos también tienen menos resistencia eléctrica que afrontar y no requieren tanta potencia para funcionar. El mejor estudio de caso para esto es la tecnología comprobada de los smartphones, un dispositivo “computadora-ligera” que brinda una inmensa cantidad de rendimiento por su tamaño relativamente pequeño, pero que logra subsistir en muchos casos durante más de 24 horas con una batería relativamente pequeña.

Dicho esto, esto no significa que todas las computadoras comenzarán a utilizar chips ARM para reducir el consumo de energía. En el mercado de escritorio, donde el sistema típicamente depende de una conexión directa a una toma de corriente en lugar de una batería, la eficiencia energética no es una prioridad tan enorme. Los chips CISC siguen funcionando magníficamente en estas situaciones y no hay señales de que esto cambie pronto, realmente.

¿Debería Comprar un Sistema ARM o x86?

Con Microsoft también lanzando su Windows 11 para la arquitectura ARM y Apple cambiando sus Mac para utilizar chips ARM, podrías estar interesado en conseguir un PC ARM también. Sin embargo, todo se reduce a una pregunta muy simple: ¿Estás tratando de sacar el máximo rendimiento por cada vatio-hora de energía que suministra tu batería? ¿O estás más inclinado a impulsar tanto rendimiento bruto a través de tu dispositivo en detrimento de la duración de la batería?

Para la mayoría de los casos de uso por los que alguien compraría un sistema, la decisión es tan simple. Al final, solo asegúrate de no olvidar llevar tu cable de carga contigo.