Arquitectura de CPU de 64 bits

El x86 tradicionalmente tiene como objetivo el máximo rendimiento por encima de todo lo demás, lo cual es una diferencia clave con los procesadores Arm que buscan una mejor eficiencia energética. En el mundo actual, las arquitecturas de 64 bits son la corriente principal en los smartphones y los PC. Este cambio no ha sido tan rápido, ya que en 2012 los teléfonos también hicieron la transición, pero esto no cambió la forma en que usamos los dispositivos, sino que los hizo manejar mejor las cosas. Hoy en día ambas arquitecturas soportan 64 bits pero es más relevante en los smartphones.

Los PCs pasaron a los 64 bits mucho antes que los smartphones, pero no fue Intel quien acuñó la moderna arquitectura x86-64 (también conocida como x64). Ese galardón pertenece al anuncio de AMD de 1999, que adaptó la arquitectura x86 existente de Intel.

Arquitectura ARM

ARM está basada en RISC (Reduced Instruction Set Computing) mientras que Intel (x86) es CISC (Complex Instruction Set Computing). Las instrucciones de la CPU de Arm son razonablemente atómicas, con una correlación muy estrecha entre el número de instrucciones y los microoperadores. CISC, en comparación, ofrece muchas más instrucciones, muchas de las cuales ejecutan múltiples operaciones (como el movimiento optimizado de datos y matemáticas). Esto conduce a un mejor rendimiento, pero a un mayor consumo de energía al decodificar estas complejas instrucciones.

Arm presentó su arquitectura de 64 bits ARMv8 en 2011. En lugar de ampliar su conjunto de instrucciones de 32 bits, Arm ofrece una implementación limpia de 64 bits. Para ello, la arquitectura ARMv8 utiliza dos estados de ejecución, AArch32 y AArch64. Como sus nombres indican, uno es para ejecutar código de 32 bits y el otro para 64 bits. Lo bueno del diseño de ARM es que el procesador puede pasar sin problemas de un modo a otro durante su ejecución normal. Esto significa que el decodificador de las instrucciones de 64 bits es un nuevo diseño que no necesita mantener la compatibilidad con la era de los 32 bits, pero el procesador en su conjunto sigue siendo compatible con las versiones anteriores.

La victoria de ARM en el ecosistema móvil

Las diferencias arquitectónicas comentadas anteriormente explican en parte los éxitos y los problemas actuales a los que se enfrentan los dos colosos de los chips. El enfoque de bajo consumo de Arm está perfectamente adaptado a los requisitos de potencia de diseño térmico (TDP) de 3,5 W de los móviles, pero el rendimiento también se adapta a los chips de Intel para portátiles. Por su parte, el típico Core i7 de Intel, con un TDP de 100 W, triunfa en los servidores y los ordenadores de sobremesa de alto rendimiento, pero históricamente le cuesta bajar a menos de 5 W.

Una característica exclusiva de la arquitectura de Arm ha sido especialmente decisiva a la hora de mantener un TDP bajo para las aplicaciones móviles: la informática heterogénea. La idea es bastante sencilla, construir una arquitectura que permita que diferentes partes de la CPU (en términos de rendimiento y potencia) trabajen juntas para mejorar la eficiencia. El multiprocesamiento heterogéneo (HMP) ya es grande en el espacio de Android, ver chips como el Snapdragon 810, Exynos 7420 o Helio X20, pero Heterogeneous Compute (HC) es la próxima evolución.

Verás, los procesadores pueden diseñarse para realizar ciertas tareas de forma más eficiente, pero un único diseño lucha por ser bueno en todo. Una CPU típica puede ser buena para el procesamiento en serie, mientras que una GPU puede manejar flujos de datos en paralelo y un DSP está mejor optimizado para procesar números con gran precisión en tiempo real. Con una gama más amplia de opciones entre las que elegir, la teoría es que la elección del mejor procesador para una tarea específica se traducirá en un mayor rendimiento y eficiencia energética.

¡El ordenador más rápido del mundo en el momento de escribir este artículo está basado en ARM!

Fugaku es ahora el superordenador más rápido del mundo. Como parte del proyecto TOP500, el ordenador Fugaku de Japón ha sido clasificado como el más rápido del mundo y cuenta con el procesador A64FX. Fugaku se encuentra en el Centro RIKEN para la Ciencia Computacional en Wakō, Japón.

Compatibilidad del software

Las aplicaciones y el software tienen que ser compilados para la arquitectura de la CPU en la que se ejecutan, históricamente los ecosistemas como Android en Arm o Windows en x86 no tienen problemas para funcionar en múltiples plataformas o arquitecturas. Los Macs de Apple basados en Arm, Chrome OS de Google y Windows de Microsoft en Arm son ejemplos modernos en los que el software necesita ejecutarse tanto en arquitecturas Arm como Intel. La compilación de software nativo para ambas es una opción para las nuevas aplicaciones y los desarrolladores dispuestos a invertir en la recompilación. Para rellenar los huecos, estas plataformas también se basan en la emulación de código. Es decir, traducir el código compilado para una arquitectura de CPU para que funcione en otra. Esto es menos eficiente y degrada el rendimiento en comparación con las aplicaciones nativas, pero actualmente es posible una buena emulación para garantizar que las aplicaciones funcionen.

Tras años de desarrollo, la emulación de Windows en Arm se encuentra en un estado bastante bueno para la mayoría de las aplicaciones. Las aplicaciones de Android también funcionan decentemente en los Chromebooks de Intel en su mayor parte. Tendremos que esperar y ver si los Macbooks Arm corren tan bien.

Espero que hayas disfrutado del artículo y hayas obtenido la información que querías de él si es así sígueme para más posts como este en el futuro. Estoy haciendo mi mejor esfuerzo para proporcionar información valiosa para todos los que la buscan.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.