Esto cubre prácticamente todo lo que necesitas saber sobre los beneficios de que Apple cambie a ARM64.
https://www.mikeash.com/pyblog/friday-qa-2013-09-27-arm64-and-you.html
tl;dr conclusión/respuesta del enlace
También es importante señalar las cosas a las que no se refiere "64 bits", ya que también hay mucha confusión en este ámbito. En particular, "64 bits" no incluye :
- Tamaño de la dirección física de la RAM. El número de bits utilizados para comunicarse con la RAM (y, por tanto, la cantidad de RAM que puede soportar el hardware) está desvinculado de la cuestión de los bits de la CPU. Las CPUs ARM han oscilado entre los 26 bits y los 40 bits, y esto puede cambiarse independientemente del resto.
- Tamaño del bus de datos. La cantidad de datos obtenidos de la RAM o la caché también está desacoplada. Las instrucciones individuales de la CPU pueden solicitar una determinada cantidad de datos, pero la cantidad de datos realmente obtenida puede ser independiente, ya sea dividiendo la obtención en partes más pequeñas o obteniendo más de lo necesario. El iPhone 5 ya obtiene datos de la memoria en trozos de 64 bits, y en el mundo del PC existen trozos de hasta 192 bits.
- Todo lo relacionado con el punto flotante. El tamaño de los registros de la FPU y el diseño interno son independientes, y las CPUs ARM han tenido registros FPU de 64 bits desde mucho antes de ARM64.
"El A7 de 64 bits no es sólo un truco de marketing, pero tampoco es un avance asombroso que permita una nueva clase de aplicaciones. La verdad, como sucede a menudo, se encuentra en el medio.
El simple hecho de pasar a 64 bits hace poco. Hace que los cálculos sean ligeramente más rápidos en algunos casos, que el uso de la memoria sea algo mayor en la mayoría de los programas y que ciertas técnicas de programación sean más viables. En general, no es enormemente significativo.
La arquitectura ARM ha cambiado muchas otras cosas en su transición a los 64 bits. Un mayor número de registros y un conjunto de instrucciones revisado y simplificado permiten mejorar el rendimiento con respecto a ARM de 32 bits.
Apple aprovechó la transición para hacer algunos cambios propios. El mayor cambio es un recuento de retención en línea, que elimina la necesidad de realizar una costosa búsqueda en la tabla hash para las operaciones de retención y liberación en el caso común. Dado que estas operaciones son tan comunes en la mayoría del código de Objective-C, esto es una gran victoria. Las banderas de limpieza de recursos por objeto hacen que la liberación de objetos sea bastante más rápida en ciertos casos. En definitiva, el coste de crear y destruir un objeto se reduce aproximadamente a la mitad. Los punteros etiquetados también suponen una buena ganancia de rendimiento, así como un menor uso de memoria.
tl;dr tl;dr
- La memoria RAM está desvinculada de los bits de la CPU y no influye en su rendimiento.
- Los 64 bits no dan el doble de impulso por sí mismos
- Debido a la transición a los 64 bits, Apple consiguió introducir algunas formas inteligentes de mejorar el rendimiento