¿Por qué la CPU del iPhone 6 y iPhone 6 Plus no es más que Dual-Core 1.4 GHz?

Además de las limitaciones en el uso de energía y el subprocesamiento multiprocesador, hay una cosa que aún no se ha dicho.

¡Gigahertz no lo es todo! Hay otra métrica igualmente importante llamada “Instrucciones por reloj” o IPC. Básicamente significa, ¿cuántas cosas puedo hacer en un ciclo de reloj del procesador?

Mira, 1.4 GHz solo significa que el procesador hace algo 1,400,000,000 veces por segundo. IPC es la cantidad de cosas que puede hacer 1.400 millones de veces. Entonces, si un procesador solo puede hacer 1 cosa por ciclo de reloj, podemos estimar que se harán alrededor de 1.400 millones de cosas equivalentes. Pero si un chip puede hacer varias cosas por ciclo de reloj, ese número se multiplica. Piense en ello como una línea de montaje realmente rápida en una fábrica, frente a una línea de montaje más lenta pero más eficiente. ¡El que se mueve más lento aún puede sacar más!

Por supuesto, es mucho más complicado que eso, pero esa es una buena manera de pensarlo.

Moraleja de la historia: a pesar de que el chip del iPhone funciona a lo que parece ser una velocidad más lenta, aún puede hacer mucho con los GHz que tiene porque es muy eficiente con su método de procesamiento. Esto, a su vez, le permite ser más eficiente con la batería también. Es una balanza de diseño que se ha diseñado completamente para usar en un dispositivo móvil.

El rendimiento móvil tiene mucho más que la velocidad del reloj y el recuento de núcleos. Dos núcleos funcionando a 1.4GHz siempre que sea necesario es mucho mejor que 8 núcleos funcionando a 2GHz por una fracción de segundo un par de veces por minuto. Las CPU móviles tienen una potencia limitada, no solo por la batería sino también por la capacidad del paquete para disipar el calor sin un ventilador. La CPU solo puede mantener su velocidad máxima durante períodos cortos; después de eso, el voltaje y la frecuencia deben reducirse para que el chip se enfríe. Lo que esto significa es que el verdadero rendimiento del sistema no puede medirse realmente por la velocidad máxima del reloj; se mide con mayor precisión por el número sostenible de operaciones por segundo que el sistema puede ejecutar. Una de las claves para esto también es descargar grandes cargas de trabajo a otras partes del sistema: en la mayoría de los teléfonos, solo la aplicación y la lógica del sistema operativo alguna vez tocan la CPU principal, todo el procesamiento de audio, video y comunicaciones se realiza en un hardware especial que puede hacer mucho más trabajo para una unidad de poder dada.

Supongo que la ventaja competitiva de Apple está en controlar todo el diseño del sistema. Pueden diseñar el sistema operativo y la implementación de las API de software para maximizar el uso de hardware sin CPU y personalizar la CPU para el tipo de cargas de trabajo que ven con más frecuencia.

Apple probablemente planea expandirse en el mercado de PC con ARM personalizados. Para lograr esto, necesitan un fuerte rendimiento por núcleo.

La arquitectura de múltiples núcleos suele ser mejor para dispositivos móviles porque tiene un mejor control sobre el uso de energía. El teléfono Android en su bolsillo solo ejecutará un núcleo muy pequeño cuando su iPhone tenga una gran ejecución.

Son un poco idiotas debido a su gran plan, pocos cientos de millones de usuarios de iPhone tienen tiempos de batería muy cortos.

Supongo que algo como A9x que ahora trabajan en secreto, estará en su MacBook Air y Mac Mini en lugar de Intel.

Cinco barreras que pueden impedir que Apple traslade Intel Macs a chips ARM personalizados
“Explorando” las MacBooks e iMacs basadas en ARM de Apple OTRA VEZ …

Porque la mayoría de las aplicaciones reales rara vez usan más de dos núcleos a la vez.
Incluso en las plataformas de Apple, que tienen “gran distribución central”, es realmente difícil escribir una aplicación que utilice simétricamente múltiples núcleos de CPU.

Por lo tanto, la mayoría de las aplicaciones tienen un hilo principal y luego empujan las tareas de carga asíncrona al segundo núcleo. Imagina un amo y un sirviente. El hilo maestro hace la mayor parte del trabajo real. El subproceso de sirviente se encarga de buscar y cargar. Esa es una disposición bastante eficiente.

Pero agregar dos, tres o cincuenta núcleos adicionales no acelerará las cosas. Porque las aplicaciones no están codificadas de esa manera.

Si está escribiendo un servidor de Internet o una aplicación de representación de estilo Pixar, todos los núcleos estarán ocupados. Y eso es genial. Pero los teléfonos no hacen eso.

Entonces, dos núcleos rápidos es mejor que 4 lentos.