En 2020, Apple hizo un movimiento audaz; abandonaron Intel y cambiaron a su propio silicio para alimentar sus MacBooks. Aunque el paso a la arquitectura ARM desde el lenguaje de diseño x86 levantó varias cejas, Apple demostró que todos estaban equivocados cuando las MacBooks con tecnología de silicio de Apple ofrecieron un rendimiento alucinante por vatio.
Según varios expertos, el cambio a la arquitectura ARM fue una de las principales razones del aumento del rendimiento por vatio. Sin embargo, la nueva arquitectura de memoria unificada también desempeñó un papel crucial en la mejora del rendimiento de las MacBooks de nueva generación.
Entonces, ¿qué es la arquitectura de memoria unificada de Apple y cómo funciona? Bueno, averigüémoslo.
¿Por qué su computadora necesita memoria?
Antes de entrar en la arquitectura de memoria unificada de Apple, es esencial comprender por qué se necesitan en primer lugar los sistemas de almacenamiento primario como la memoria de acceso aleatorio (RAM).
Verá, un procesador tradicional funciona a una velocidad de reloj de 4 GHz durante un
Turbo. A esta velocidad de reloj, un procesador puede realizar tareas en un cuarto de nanosegundo. Sin embargo, las unidades de almacenamiento, como SSD y HDD, solo pueden proporcionar datos a la CPU cada diez milisegundos, es decir, 10 millones de nanosegundos. Eso significa que en el tiempo que transcurre entre que la CPU termina de procesar los datos en los que está trabajando y recibe el siguiente lote de información, está inactiva.Esto muestra claramente que las unidades de almacenamiento no pueden seguir el ritmo de la velocidad del procesador. Las computadoras resuelven este problema mediante el uso de sistemas de almacenamiento primario como la memoria RAM. Aunque este sistema de memoria no puede almacenar datos de forma permanente, es mucho más rápido en comparación con los SSD: puede enviar datos en tan solo 8,8 nanosegundos: infinitamente más rápido que los SSD más rápidos en la actualidad.
Este tiempo de acceso bajo permite que la CPU reciba datos más rápido, lo que le permite procesar información continuamente en lugar de esperar a que el SSD envíe otro lote para su procesamiento.
Debido a esta arquitectura de diseño, los programas en las unidades de almacenamiento se mueven a la RAM y luego la CPU accede a ellos a través de los registros de la CPU. Por tanto, un sistema de almacenamiento primario más rápido mejora el rendimiento de un ordenador, y eso es precisamente lo que está haciendo Apple con su Arquitectura de Memoria Unificada.
Comprender cómo funcionan los sistemas de memoria tradicionales
Ahora que sabemos por qué se necesita RAM, debemos comprender cómo la GPU y la CPU la utilizan. Aunque tanto la GPU como la CPU están diseñadas para el procesamiento de datos, la CPU está diseñada para realizar cálculos de propósito general. Por el contrario, la GPU está diseñada para realizar la misma tarea en diferentes núcleos. Debido a esta diferencia en el diseño, la GPU es altamente eficiente en el procesamiento y renderizado de imágenes.
Aunque la CPU y la GPU tienen arquitecturas diferentes, dependen de los sistemas de almacenamiento primarios para obtener datos. Hay dos tipos de memorias de acceso aleatorio en un sistema tradicional con una GPU dedicada. Esta es la VRAM y la RAM del sistema. También conocida como Video RAM, la VRAM es responsable de enviar datos a la GPU y la RAM del sistema transfiere datos a la CPU.
Pero para comprender mejor los sistemas de administración de memoria, veamos un ejemplo de la vida real de usted jugando un juego.
Cuando abre el juego, la CPU entra en escena y los datos del programa para el juego se mueven a la RAM del sistema. Después de eso, la CPU procesa los datos y los envía a la VRAM. Luego, la GPU procesa estos datos y los envía de regreso a la RAM para que la CPU muestre la información en la pantalla. En los casos de un sistema GPU integrado, ambos dispositivos informáticos comparten la misma RAM pero acceden a diferentes espacios en la memoria.
Este enfoque tradicional implica mucho movimiento de datos, lo que hace que el sistema sea ineficiente. Para solucionar este problema, Apple utiliza la Arquitectura de memoria unificada.
¿Cómo funciona la arquitectura de memoria unificada en Apple Silicon?
Apple hace varias cosas de manera diferente cuando se trata de sistemas de memoria.
En el caso de los sistemas genéricos, la RAM se conecta a la CPU mediante un zócalo en la placa base. Esta conexión reduce la cantidad de datos enviados a la CPU.
Por otra parte, silicio de manzana utiliza el mismo sustrato para montar la RAM y el SoC. Aunque la RAM no forma parte del SoC en una arquitectura de este tipo, Apple utiliza un sustrato de interposición (Fabric) para conectar la RAM al SoC. El intercalador no es más que una capa de silicio entre el SOC y la RAM.
En comparación con los enchufes tradicionales, que se basan en cables para transferir datos, el intercalador permite que la RAM se conecte al conjunto de chips mediante vías de silicio. Eso significa que las MacBooks con tecnología de silicio de Apple tienen su RAM integrada directamente en el paquete, lo que hace que la transferencia de datos entre la memoria y el procesador sea más rápida. La RAM también está físicamente más cerca de donde se necesitan los datos (los procesadores), lo que permite que los datos lleguen antes a donde se necesitan.
Debido a esta diferencia en la conexión de la RAM al conjunto de chips, puede acceder a anchos de banda de datos elevados.
Además de la diferencia mencionada anteriormente, Apple también cambió la forma en que la CPU y la GPU acceden al sistema de memoria.
Como se explicó anteriormente, la GPU y la CPU tienen diferentes grupos de memoria en la configuración tradicional. Apple, por el contrario, permite que la GPU, la CPU y el Neural Engine accedan al mismo grupo de memoria. Debido a esto, no es necesario transferir datos de un sistema de memoria a otro, mejorando aún más la eficiencia del sistema.
Debido a todas estas diferencias en la arquitectura de la memoria, el Sistema de memoria unificado ofrece un alto ancho de banda de datos al SoC. De hecho, el M1 Ultra proporciona un ancho de banda de 800 GB/s. Este ancho de banda es sustancialmente mayor en comparación con las GPU de alto rendimiento como la AMD Radeon RX 6800 y 6800XT, que ofrecen un ancho de banda de 512 GB/s.
Este gran ancho de banda permite que la CPU, la GPU y el Neural Engine accedan a vastos conjuntos de datos en nanosegundos. Además, Apple utiliza módulos RAM LPDDR5 con frecuencia de 6400 MHz en la serie M2 para suministrar datos a velocidades asombrosas.
¿Cuánta memoria unificada necesita?
Ahora que tenemos una comprensión básica de la arquitectura de memoria unificada, podemos ver cuánto necesita.
Aunque la arquitectura de memoria unificada ofrece varias ventajas, todavía tiene algunos defectos. En primer lugar, la RAM está conectada al SoC, por lo que los usuarios no pueden actualizar la RAM en su sistema. Además, la CPU, la GPU y el Neural Engine acceden al mismo grupo de memoria. Debido a esto, la cantidad de memoria requerida por el sistema aumenta drásticamente.
Por lo tanto, si eres de los que navega por Internet y usas un montón de procesadores de texto, 8 GB de memoria serían suficientes para ti. Pero si usa los programas Adobe Creative Cloud con frecuencia, obtener la variante de 16 GB es una mejor opción, ya que tendrá una experiencia más fluida al editar fotos, videos y gráficos en su máquina.
También debe considerar el M1 Ultra con 128 GB de RAM si está entrenando muchos modelos de aprendizaje profundo o trabajando en líneas de tiempo de video con toneladas de capas y material de archivo 4K.
¿La arquitectura de memoria unificada es todo para bien?
La arquitectura de memoria unificada en el silicio de Apple realiza varios cambios en los sistemas de memoria de una computadora. Desde cambiar la forma en que la RAM se conecta a las unidades computacionales hasta redefinir la arquitectura de la memoria, Apple está cambiando la forma en que se diseñan los sistemas de memoria para mejorar la eficiencia de sus sistemas.
Dicho esto, la nueva arquitectura crea una condición de carrera entre la CPU, la GPU y el Neural Engine, lo que aumenta la cantidad de RAM que necesita el sistema.