Pourquoi le processeur Apple A12X a-t-il de meilleurs résultats que le i7-4790T?


6

Sur mon poste de travail, j'ai un processeur Intel i7-4790T que j'ai toujours pensé être un processeur assez rapide. Mais selon Geekbench 4, le processeur Apple A12X du nouvel iPad Pro le bat confortablement. Lorsque je lance Geekbench 4, la vitesse de base est d’environ 4 000 mais sur le nouvel iPad Pro le processeur A12X renvoie environ 5 000 c'est-à-dire 25% plus rapide. En fait, même le A12 et A11 marquent plus que mon i7-4790T . Lors du test multicœur, mon processeur dépasse légèrement les 11 000 tandis que le A12X en compte 18 000, soit 60% plus rapide.

Une question préliminaire est de savoir si Geekbench est un indicateur fiable de la vitesse dans le monde réel. Par exemple, la seule chose que je fais qui insiste vraiment sur mon processeur est le ré-échantillonnage vidéo avec Frein à main . Handbrake n’est pas disponible pour IOS, mais s’il était porté, Handbrake traiterait réellement les vidéos 60% plus rapidement sur l’A12X, ou le score de Geekbench n’est-il pas représentatif des performances réelles?

Mais ma question principale est la suivante: en laissant de côté la comparaison exacte entre l’A12X et mon processeur, comment Apple a-t-il réussi à obtenir une puce RISC à base d’ARM aussi rapide? Quels aspects de son architecture sont responsables de la grande vitesse?

D'après ce que je comprends des architectures RISC, elles fonctionnent moins par cycle d'horloge, mais leur conception simple leur permet de fonctionner à des vitesses d'horloge plus élevées. Mais le A12X fonctionne à 2,5 GHz alors que mon i7 a une vitesse de base de 2,7 GHz et passera à 3,9 GHz avec des charges à cœur unique. Donc, étant donné que mon i7 fonctionnera à une vitesse d'horloge 50% plus rapide que l'A12X, comment la puce Apple parvient-elle à la battre?

D'après ce que je peux trouver sur Internet, l'A12X a beaucoup plus de cache L2, 8 Mo contre 256 Ko (par cœur) pour mon i7, c'est donc une grosse différence. Mais ce cache L2 supplémentaire fait-il vraiment une si grande différence en termes de performances?

Annexe: Geekbench

Le test de l’unité centrale Geekbench met uniquement l’accent sur les vitesses de la CPU et de la mémoire CPU. Les détails de exactement comment Geekbench fait cela sont décrits dans ce PDF (136KB) . Les tests semblent correspondre exactement au type de tâches que nous réalisons qui utilisent beaucoup de ressources processeur, et il semble bien qu’ils seraient effectivement représentatifs des performances du frein à main que j’ai proposées à titre d'exemple.

La ventilation détaillée des résultats de Geekbench pour mon i7-4790T et le A12X est la suivante:

Test            i7-4790T      A12X
Crypto            3870        3727
Integer           4412        5346
Floating Point    4140        4581
Memory Score      3279        5320

Réponses:


11

L'A12X est un énorme processeur construit sur la dernière technologie, laissant loin derrière l'ancien i7-4790T datant de 2014.

La première différence est le processus de fabrication: Le A12X est une puce à 7 nm, tandis que le i7-4790T Haswell-DT est construit sur un ancien 22 nm. Des transistors plus petits signifient moins d'espace, moins de puissance de fonctionnement et des signaux plus rapides à travers des chemins de puce plus courts.

L'A12X a un énorme 10 milliards transistors, tandis que le i7-4790T a seulement 1,4 milliard.

Cela permet à l’A12X d’avoir six pipelines d’exécution entiers, parmi lesquels deux sont des unités complexes, deux unités de chargement et de stockage, deux ports de branche, et trois pipelines FP / vectoriels, donnant un total estimé à 13 ports d’exécution, beaucoup plus que les huit ports d’exécution de l’architecture Haswell-DT.

Pour la taille du cache, nous avons par cœur sur l’A12: chaque grand noyau a Cache L1 de 128 Ko et cache L2 de 8 Mo. Chaque petit noyau a 32 Ko de L1 et 2 Mo de L2. Il existe également 8 Mo supplémentaires de $ sur l’ensemble du système de calcul (également utilisés pour d’autres tâches).

L’architecture Haswell possède un cache N1 de 64 Ko par cœur, un cache N2 de 256 Ko par cœur, et cache L3 de 2 à 40 Mo (partagé).

On peut voir que l'A12X bat l'i7-4790T sur tous les points et de loin.

En ce qui concerne l’architecture RISC vs CISC, il s’agit maintenant d’un point discutable pour les processeurs modernes. Les deux architectures ont évolué au point de devenir imiter les caractéristiques de chacun dans une certaine mesure afin d'atténuer les faiblesses.

Je cite ici le tableau des comparaisons avec Xeon 8192, i7 6700k, et les processeurs AMD EPYC 7601, compilés par Reddit (lien ci-dessous), où l'A12 se compare bien, même avec les processeurs de bureau:

image

Sources :


1
Les valeurs de 7 nm de TSMC sont plus comparables aux valeurs de 10 nm d’Intel, de sorte qu’elles représentent «seulement» une avance sur deux générations. RISC / CISC fait une différence notable en microarchitecture. Un RISC n'aurait pas de cache de microcode avec des instructions substantiellement utilisées (~ 90 bits par opération contre ~ 38 bits par instruction avec un prédécodage significatif dans un Icache RISC) afin de réduire le temps de latence / énergie de décodage. Les registres supplémentaires peuvent également améliorer les performances de 1 à 2%. Ces avantages RISC sont faibles par rapport à la microarchitecture et minimes par rapport à la technologie de traitement, mais ils ne sont pas nuls.
Paul A. Clayton

@ PaulA.Clayton, le débat moderne sur RISC / CISC est inutile. Les processeurs ARM utilisent le microcode depuis longtemps. Les RISC ont plus de registres simplement parce qu'ils ne peuvent pas accéder à la mémoire dans des instructions normales. Les CPU CISC peuvent avoir des centaines de registres en interne en raison de leur renommage. Et où obtenez-vous ces 90 et 38 bits? le longueur moyenne des instructions x86 sont justes plus de 2 octets
phuclv

@phuclv, les processeurs Intel utilisent le microcode depuis l’architecture ARM sur les machines des utilisateurs. Le microcode a été implémenté après le bogue Pentium. En ce qui concerne CISC / RISC, le microcode Intel traite en interne les instructions CISC en plusieurs instructions RISC et les met en pipeline.
Strom

merci d'avoir ajouté les sources!
Albin

0

Vous comparez des architectures très différentes entre le A12X et Haswell (Intel i7-4790T), et les chiffres de référence ne sont pas directement comparables, même si les deux processeurs ne sont pas directement comparables.

Comprendre ce qu’est un test particulier est utile pour comprendre la signification des chiffres. En passant par votre test de geek, commençons par la dernière ligne.

Selon vos tests GeekBench, la bande passante mémoire entre l’A12X et la puce haswell est fortement asymétrique. L'A12X a environ deux fois plus de performances mémoire. Alors que les tests de mémoire combinent généralement deux éléments sans rapport, la latence et la bande passante, le A12X est clairement le gagnant

L'élément suivant est la performance en virgule flottante. Ce test tente de comparer le code optimisé manuellement entre différentes architectures. Bien que les chiffres puissent être faussés par la qualité des optimisations, cela devrait être un bon indicateur approximatif des performances générales des FPU et est directement comparable. Ici, les deux processeurs ont des résultats similaires.

Le test le moins utile est le test intitulé Performances entières. Il ne s'agit pas d'une performance entière au sens arithmétique, mais plutôt d'un ensemble de charges de travail génériques non FPU. Ces tests ont du sens car ils montrent les performances des applications sur une plate-forme, mais ils ne permettent pas de dire que le processeur A est meilleur que le processeur B car ils sont quelque peu sensibles aux performances de la mémoire.

Dernier est la charge de travail Crypto. Cela a du sens dans l’abrégé, même si le test en question n’est probablement pas aussi utile. La cryptographie haute performance devrait utiliser AES-GCM et non AES-CTR, ce dernier ne se prêtant pas également à l'accélération matérielle. C'est également un point de référence spécifique à un domaine.

Si je devais essayer de dire quelque chose d'intelligent à propos de ces chiffres, essayons ceci;

  • L'A12X a considérablement amélioré la bande passante de la mémoire. Cela est dû en partie au fait que la mémoire de bureau semble prendre du retard par rapport aux technologies de mémoire actuelles, mais également au fait que les performances de la mémoire se sont améliorées en cinq ans.
  • L'A12X présente des performances FPU légèrement supérieures par cœur par rapport à l'i7-4790T.
  • Le A12X va exécuter des charges de travail génériques similaires ou plus rapides que le i7-4790T.
  • L'A12X est bien meilleur pour les charges de travail spécifiques à un domaine car il fournit un support matériel pour des instructions nouvelles et différentes qui répondent mieux aux besoins d'une tablette / d'un appareil cellulaire.

Tirer des conclusions plus larges sur la base de ces chiffres, ou formuler des revendications architecturales sur la base de ces chiffres, n’est probablement pas judicieux.

En ce qui concerne la comparaison d’architecture générique, RISC et CISC n’ont plus de sens, car les deux jeux d’instructions sont décodés en micro-opérations qui déterminent la répartition de la charge de travail. Comparer uniquement sur des ports d'exécution n'a probablement pas de sens, car il s'agit de blocs de construction de haut niveau qui ne sont pas directement comparables.

Le cache est une quantité importante qui contribue directement aux performances du processeur, mais il est également très compliqué. La manière dont le cache est partagé entre l'architecture intel et l'A12X est complètement différente. En général, il est préférable d’avoir plus de cache, mais la cohérence du cache est tout aussi importante, ce qui a une incidence sur la capacité des applications à threads de partager des données entre cœurs.

Enfin, le processeur doit fonctionner pour votre charge de travail. Bien que l'A12X puisse prendre en charge une charge de travail de bureau à l'avenir, l'i7 v4 le prend maintenant en charge, ce qui en fait un choix supérieur pour un processeur de bureau, même s'il a quatre à cinq ans de plus que l'A12X.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.