J'essaie de comprendre pourquoi le passage à des processeurs 64 bits est si important dans un iPhone. Je comprends qu'il y aura deux fois plus de registres afin que le processeur puisse travailler avec deux fois plus de données, ce qui devrait augmenter les performances.
Cependant, je ne vois pas beaucoup de téléphones utiliser plus de 4 Go de mémoire de si tôt. Cela semble exagéré et cela aurait un impact négatif sur la durée de vie de la batterie.
Un autre problème que je vois est que la plupart des variables ont maintenant besoin de deux fois plus de mémoire. Cela créera des problèmes dans un environnement mobile avec de petites quantités de mémoire.
Je crois que les gens d'Apple sont intelligents et qu'ils ont probablement de bonnes raisons de le faire, j'essaie juste de les comprendre.
MODIFIER
Je ne sais pas grand-chose sur les GPU mais on m'a dit qu'avec des registres 64 bits, 2 pixels peuvent être chargés dans chaque registre et que les opérations peuvent être effectuées individuellement. Existe-t-il un avantage graphique concernant le 64 bits?
Réponses:
Il s'agit surtout de lancer un grand nombre là-bas, car cela impressionne les masses. Les nombres plus importants sont évidemment supérieurs, donc tout ce qui a un processeur 64 bits est clairement meilleur que quelque chose avec un processeur 32 bits. Le nouveau processeur est nettement meilleur que son prédécesseur mais, à la mode Apple, ils n'essaieront pas de marketing basé sur les spécifications techniques - ils vont juste vous dire que l' A7 64 bits est plus récent et meilleur que le 32- bit A-6 . En regardant les spécifications techniques, cependant, vous voyez:
Au-delà de cela, il y a le fait qu'ils peuvent commencer à déployer du matériel 64 bits (rétrocompatible) aujourd'hui, avant de nous heurter au `` mur de 4 Go ''. Dans quelques années, lorsque le 64 bits deviendra une nécessité, tout le matériel le prendra en charge et il ne sera plus nécessaire de gérer les architectures 32 bits héritées.
la source
Il n'y a pas de «mur de 4 Go» sur ARMv7, car de nombreux cœurs ARMv7 prennent en charge LPAE (Large Physical Address Extension), qui est un concept similaire à PAE sur x86, sauf que LPAE utilise un adressage 40 bits. Cela signifie que l' ARMv7 équipé de LPAE peut traiter jusqu'à 1 To de RAM .
Il est également important de mentionner que les prochains cœurs ARMv8, y compris A7, n'utiliseront pas l'adressage physique 64 bits . A7 utilisera très probablement un adressage physique 40 bits ou 44 bits. Plus tard, donnant accès à au plus 16 To de RAM.
Bien sûr, avec LPAE sur ARMv7 ou en mode AArch32 sur ARMv8, les applications sont toujours 32 bits, de sorte que l'application elle-même ne peut accéder qu'à 4 Go à la fois. Mais je ne pense pas que ce serait un problème sur les appareils mobiles de si tôt.
Vous craignez que les applications utilisent plus de mémoire (pointeurs 64 bits), mais ce ne sera pas le cas si les applications fonctionnent en mode 32 bits (AArch32).
D'un autre côté, ARMv8 fournit d'autres améliorations architecturales par rapport à ARMv7, qui ne sont pas liées à AArch64.
TL, DR: 64 bits d'A7 est un gadget marketing. Même sur les systèmes avec plus de 4 Go de RAM, il n'offre aucun avantage significatif sur LPAE pour les applications 32 bits. Et les applications 64 bits n'arriveront pas de sitôt.
Mise à jour: Cela a été confirmé par le directeur marketing de Qualcomm (actuellement ancien cadre, car il a été rétrogradé pour ces commentaires ).
la source
Se concentrer uniquement sur le fait d'
A7
êtreARMv8
là est un gain évident. ARM redémarre son jeu d'instructions et son architecture.Étant la compatibilité à rebours avec
ARMv7
, la prochaine version prétend égalementARMv8
Défis doncARMv7
sur les différences architecturales, fournissant une interface plus propre pour les développeurs de systèmes qui supprimerait probablement les fonctionnalités héritées conduisant à une meilleure plate-forme. Ce qui signifie que vous devriez vous attendre à une meilleure performance / énergie au lieu d'un impact négatif sur la batterie.En savoir plus sur ARM Architecture Preview .
la source
Le plus grand avantage par rapport aux 32 bits pour les processeurs 64 bits est le mouvement de la mémoire, et non la taille de la mémoire. S'il est vrai que 32 bits peut imposer une limite de 4 Go sur l'accès direct. Il existe de nombreuses solutions matérielles / logicielles pour contourner cette limite.
Les processeurs 64 bits peuvent simplement lire / écrire plus de données en une seule opération de processeur. Il permet au code assembleur d'effectuer des opérations sur des blocs de 8 octets. Cela peut avoir un grand avantage en termes de performances par rapport aux processeurs 32 bits. Les calculs en virgule flottante sont plus rapides sur 64 que sur 32, et lorsque le processeur utilise des registres doubles, il peut fonctionner sur des blocs de données de 128 bits.
Les processeurs 64 bits ont également des bandes passantes plus larges pour la mémoire physique. Si vous avez une caméra qui enregistre 1080p et que vous souhaitez éditer cette vidéo. Effectuer une opération sur un fichier vidéo de 1 Go sera tout simplement plus rapide sur 64 bits.
Tout ce qui précède est vrai même si le Ghz du processeur reste le même.
Si le 64 bits est si bon, alors pourquoi pas le 128 bits?
Plus vous ajoutez de bits au pipeline d'un processeur, plus le processeur doit déplacer de données. Le CPU ne peut pas réduire cette bande passante à 16 ou 32. Cela crée donc un problème pour les développeurs de logiciels. La plupart des logiciels (votre calendrier, vos notes, etc.) ne dépendent pas de beaucoup de données, et par conséquent 128 bits impliqueraient beaucoup de bande passante gaspillée. Cela peut commencer à entraver les performances et la durée de vie de la batterie. Les fabricants de CPU doivent donc trouver un équilibre entre la bande passante et les exigences logicielles.
Je suis étonné qu'Apple ait sorti un nouveau processeur 64 si tôt dans la vie de l'informatique mobile. Je pense que leur véritable motivation est le graphisme 3D. Avec un processeur 64 bits, le téléphone peut déplacer plus de données vers le GPU rapidement. Cela permettra des jeux 3D rapides et des graphismes plus impressionnants. Vous allez vraiment commencer à voir les avantages du 64 bits en 3D en temps réel car ce processus dépend fortement des données.
la source
cache lines
sur des bus de mémoire qui peuvent avoir 16 bits 32 bits ou probablement 64 bits. Cela ne correspond pas nécessairement à la taille du mot natif de la voûte CPU. Vous avez raison: le gros problème est le déplacement des données, mais ce problème appartient à un autre domaine matériel / architectural. FP est fait sur FPU qui sont en fait assez rapides et peuvent fonctionner avec des tailles de précision simple ou double. De même pour le décodage vidéo ou 3D en fait, ils ont tous leurs propres matériels dédiés qui ne sont pas nécessairement 64 bits.what every programmer should know about memory
disponible gratuitement pour le développeur curieux akkadia.org/drepper/cpumemory.pdfCela facilite les choses lors de la manipulation de grands nombres. Les grands nombres sont extrêmement importants en cryptographie (après que PRISM a un téléphone mobile sécurisé est devenu très important) et les applications scientifiques.
la source
Bien que vous ne puissiez pas rencontrer de problèmes maintenant si vous vous en tenez à 32 bits, il y aura certainement des problèmes dans un proche avenir. La leçon tirée du monde des ordinateurs de bureau est qu'une transition sera un processus long et pénible. Vous devriez donc commencer par cela plus tôt que tard.
C'était même surprenant pour moi que les smartphones n'étaient pas 64 bits dès le départ.
la source
Je ne pense pas qu'il y ait beaucoup d'avantages techniques. Tout d'abord, je pense que cela a plus de sens lorsque vous considérez l'iPad (il a une batterie plus grande, donc il peut prendre en charge plus de RAM, une consommation d'énergie plus élevée par le processeur, etc.). Revoyez les autres annonces en cours en ce moment. AMD vient d'annoncer son intention de livrer des processeurs ARM 64 bits en 2014. Il s'agit essentiellement d'Apple qui garde le leadership du marché face à ce qui arrive aux tablettes Android et Win8 haut de gamme.
la source
À court terme, presque rien. C'est en fait un pas en arrière de plusieurs façons. Il y a trois avantages principaux que je connais.
la source
Repères.
Pour certaines implémentations capables à la fois de modes architecturaux 32 et 64 bits avec les ISA x86, MIPS et ARM, le mode 64 bits est plus rapide sur certaines applications importantes. L'une des principales raisons est que les ISA 64 bits sont plus récents et que les architectes ISA en savaient donc plus sur les statistiques d'application et comment optimiser cet ensemble de comportements d'application lors de la définition de l'ISA. Et un nouveau processeur ISA doit être à l'épreuve du temps contre les besoins en mémoire d'application qui croissent au rythme de la loi de Moore, et qui ont déjà plus d'un million de fois dans le domaine des appareils mobiles.
Ainsi, le nouvel arm64 ISA se réfère probablement plus rapidement à tout code limité par les performances que vous pourriez développer (il a sur mon code), tout en permettant aux pointeurs C stupides d'adresser les vastes espaces d'adressage virtuels susceptibles de devenir communs dans une décennie ou plus (ce qui est beaucoup moins de temps que l'ARM 32 bits ISA d'origine a déjà existé).
Les performances sur votre ensemble particulier d'applications (mesure à confirmer) sont une excellente raison de préférer arm64.
la source
64 bits permet beaucoup plus de partage de code avec les versions de bureau d'OSX (qui sont toutes 64 bits)
la source