En mi estación de trabajo tengo un Intel i7-4790T que siempre pensé que era una CPU bastante rápida. Pero según Geekbench 4, el procesador Apple A12X del nuevo iPad Pro lo supera cómodamente. Cuando ejecuto Geekbench 4 obtengo una velocidad central única de alrededor de 4.000, pero en el nuevo iPad Pro el procesador A12X devuelve alrededor de 5.000, es decir, un 25% más rápido. De hecho, incluso el A12 y el A11 obtienen una puntuación más alta que mi i7-4790T . En la prueba multinúcleo, mi CPU tiene un puntaje de más de 11,000, mientras que el A12X obtiene 18,000, que es un 60% más rápido.
Una pregunta preliminar es si Geekbench es un indicador confiable de la velocidad del mundo real. Por ejemplo, lo único que hago que realmente enfatiza mi CPU es el remuestreo de video con Handbrake . Handbrake no está disponible para IOS, pero suponiendo que fuera portado, ¿Handbrake realmente procesaría videos un 60% más rápido en el A12X, o la puntuación de Geekbench no representa el rendimiento del mundo real?
Pero mi pregunta principal es esta: dejando de lado exactamente cómo se comparan el A12X y mi CPU, ¿cómo ha logrado Apple obtener un chip RISC basado en ARM para que sea tan rápido? ¿Qué aspectos de su arquitectura son responsables de la alta velocidad?
Mi comprensión de las arquitecturas RISC es que hacen menos por ciclo de reloj, pero su diseño simple significa que pueden funcionar a velocidades de reloj más altas. Pero el A12X funciona a 2.5GHz mientras que mi i7 tiene una velocidad base de 2.7GHz y aumentará a 3.9GHz en cargas de un solo núcleo. Entonces, dado que mi i7 funcionará a velocidades de reloj un 50% más rápido que el A12X, ¿cómo logra vencerlo el chip de Apple?
Por lo que puedo encontrar en Internet, el A12X tiene mucho más caché L2, 8 MB frente a 256 KB (por núcleo) para mi i7, así que esa es una gran diferencia. Pero, ¿este caché L2 adicional realmente marca una gran diferencia en el rendimiento?
Apéndice: Geekbench
La prueba de CPU Geekbench solo enfatiza la velocidad de la CPU y la memoria de la CPU. Los detalles de cómo Geekbench hace esto se describen en este PDF (136 KB) . Las pruebas parecen ser exactamente el tipo de cosas que hacemos que usan mucha CPU, y parece que de hecho serían representativas del rendimiento de Handbrake que sugerí como ejemplo.
El desglose detallado de los resultados de Geekbench para mi i7-4790T y el A12X son:
Test i7-4790T A12X
Crypto 3870 3727
Integer 4412 5346
Floating Point 4140 4581
Memory Score 3279 5320
fuente
Está comparando arquitecturas muy diferentes entre el A12X y Haswell (Intel i7-4790T), y los números de referencia no son directamente comparables, al igual que los dos procesadores no son directamente comparables.
Comprender lo que está probando una prueba en particular es útil para tratar de entender lo que significan los números. Al pasar por la prueba de banco geek, comencemos en la última línea.
Según sus pruebas de GeekBench, el ancho de banda de memoria entre el A12X y el chip haswell está muy sesgado. El A12X tiene aproximadamente el doble de rendimiento de memoria. Si bien las pruebas de memoria generalmente combinan dos elementos no relacionados, latencia y ancho de banda, el A12X es el claro ganador aquí.
El siguiente elemento es el rendimiento de coma flotante. Esta prueba está tratando de comparar el código optimizado a mano entre diferentes arquitecturas. Si bien los números pueden estar sesgados por la calidad de las optimizaciones, esto debería ser un buen estadio para el rendimiento general de la FPU y es directamente comparable. Aquí los dos procesadores tienen resultados similares.
La prueba menos útil es la prueba denominada rendimiento de enteros. No es un rendimiento entero en el sentido aritmético, sino más bien una colección de cargas de trabajo genéricas que no son FPU. Estas pruebas son significativas porque muestran el rendimiento de la aplicación en una plataforma, pero no son significativas para decir que el procesador A es mejor que el procesador B, ya que son algo sensibles al rendimiento de la memoria.
El último es la carga de trabajo de Crypto. Esto es significativo en abstracto, aunque la prueba en particular probablemente no sea tan útil. El cifrado de alto rendimiento debería usar AES-GCM, no AES-CTR, el último de los cuales tampoco se presta a la aceleración de hardware. Este también es un punto de referencia específico de dominio.
Si tratara de decir algo inteligente sobre esos números en particular, intentemos esto;
Sacar conclusiones más amplias basadas en esos números, o hacer afirmaciones arquitectónicas basadas en esos números probablemente no sea sabio.
En cuanto a una comparación de arquitectura genérica, RISC vs CISC ya no tiene sentido ya que ambos conjuntos de instrucciones están decodificados en micro-operaciones que determinan cómo se distribuye la carga de trabajo. La comparación basada únicamente en puertos de ejecución probablemente no sea particularmente significativa ya que son bloques de construcción de alto nivel que no son directamente comparables.
La memoria caché es una cantidad importante que contribuye directamente al rendimiento del procesador, pero también es muy complicada. La forma en que se comparte la memoria caché entre la arquitectura de Intel y el A12X es completamente diferente. En general, tener más caché es mejor, pero igual de importante es la coherencia del caché, que afecta la forma en que las aplicaciones con subprocesos pueden compartir datos entre núcleos.
Por último, el procesador debe funcionar para su carga de trabajo. Si bien el A12X puede admitir una carga de trabajo de escritorio en algún momento en el futuro, el i7 v4 lo admite ahora, y eso lo convierte en una opción superior para un procesador de escritorio a pesar de que es cuatro o cinco años más antiguo que el A12X.
fuente