Si vous avez déjà fait beaucoup de comparaison pour un nouveau CPU, vous avez peut-être remarqué que les cœurs vitesse plutôt que d'une combinaison de différents. Pourquoi donc?
La session de questions et réponses d'aujourd'hui nous est offerte par SuperUser, une subdivision de Stack Exchange, un regroupement communautaire de sites Web Q & A
Lecteur SuperUser Jamie veut savoir pourquoi les cœurs de CPU ont tous la même vitesse plutôt que des cœurs différents:
En général, si vous achetez un nouvel ordinateur, vous déterminez quel processeur acheter en fonction de la charge de travail attendue pour l'ordinateur . Les performances dans les jeux vidéo ont tendance à être déterminées par la vitesse de base unique, tandis que les applications telles que l'édition vidéo sont déterminées par le nombre de cœurs. En termes de disponibilité sur le marché, toutes les CPU semblent avoir à peu près la même vitesse, les différences principales étant plus de threads ou plus de cœurs.
Par exemple:
- Intel Core i5-7600K, fréquence de base 3,80 GHz, 4 cœurs, 4 fils
- Intel Core i7-7700K, fréquence de base 4,20 GHz, 4 cœurs, 8 fils
- AMD Ryzen 5 1600X, fréquence de base 3,60 GHz, 6 cœurs, 12 fils
- AMD Ryzen 7 1800X, fréquence de base 3,60 GHz, 8 cœurs, 16 threads
Pourquoi voyons-nous ce schéma de cœurs croissants, alors que tous les cœurs ont la même vitesse d'horloge? Pourquoi n'y a-t-il pas de variantes avec des vitesses d'horloge différentes? Par exemple, deux "gros" cœurs et beaucoup de petits cœurs
Au lieu de quatre cœurs à 4.0 GHz (c'est-à-dire 4 × 4 GHz, 16 GHz maximum), que diriez-vous d'un CPU avec deux cœurs fonctionnant à 4.0 GHz et quatre cœurs fonctionnant à 2,0 GHz (c'est-à-dire 2 × 4,0 GHz + 4 × 2,0 GHz, 16 GHz maximum)? La deuxième option serait-elle aussi bonne pour les charges de travail à un seul thread, mais potentiellement meilleure pour les charges de travail multithread?
Je pose cette question comme une question générale et pas spécifiquement pour les CPU listées ci-dessus ou pour une charge spécifique. Je suis juste curieux de savoir pourquoi le motif est ce qu'il est
Pourquoi les cœurs de CPU ont-ils tous la même vitesse au lieu de différents?
bwDraco a la réponse pour nous:
Ceci est connu comme le multi-traitement hétérogène (HMP) et est largement adopté par les appareils mobiles. Dans les dispositifs basés sur ARM qui implémentent big.LITTLE, le processeur contient des cœurs avec des performances et des profils de puissance différents, c.à.d. certains cœurs fonctionnent rapidement mais tirent beaucoup de puissance (architecture plus rapide et / ou horloges plus élevées) tandis que d'autres sont économes architecture plus lente et / ou bas horloges). Ceci est utile car la consommation d'énergie tend à augmenter de manière disproportionnée lorsque vous augmentez les performances une fois que vous avez dépassé un certain point. L'idée ici est d'obtenir des performances quand vous en avez besoin et de la vie de la batterie quand vous ne le faites pas.
Sur les plates-formes de bureau, la consommation d'énergie est moins problématique, ce n'est donc pas vraiment nécessaire. La plupart des applications s'attendent à ce que chaque cœur ait des caractéristiques de performance similaires, et les processus de planification pour les systèmes HMP sont beaucoup plus complexes que ceux des systèmes SMP (Symmetric Multi-Processing) (Windows 10). appareils qui utilisent ARM big.LITTLE).
De même, la plupart des processeurs de bureau et d'ordinateurs portables ne sont pas limités thermiquement ou électriquement au point que certains cœurs doivent fonctionner plus vite que d'autres, même pour de courtes rafales. Nous avons essentiellement atteint un mur sur la rapidité avec laquelle nous pouvons créer des cœurs individuels, donc le remplacement de certains cœurs par des cœurs plus lents ne permettra pas aux cœurs restants de fonctionner plus rapidement.
Il existe quelques processeurs de bureau dotés d'un ou deux cœurs. fonctionnant plus vite que les autres, cette capacité est actuellement limitée à certains processeurs Intel très haut de gamme (connus sous le nom de Turbo Boost Max Technology 3.0) et n'entraîne qu'un léger gain de performance pour les cœurs qui peuvent fonctionner plus rapidement.
Il est certainement possible de concevoir un processeur x86 traditionnel avec des cœurs grands et rapides et des cœurs plus petits et plus lents pour optimiser les charges de travail lourdes, ce qui ajouterait une complexité considérable à la conception du processeur et il est peu probable que les applications le supportent correctement.Prenez un processeur hypothétique avec deux cœurs rapides de Kaby Lake (7e génération) et 8 cœurs de Goldmont (Atom) lents. Vous auriez un total de 10 cœurs, et les charges de travail fortement threadées, optimisées pour ce type de processeur, pourraient voir un gain de performance et d'efficacité par rapport à un processeur Kaby Lake quad-core normal. Cependant, les différents types de cœurs ont des niveaux de performances très différents, et les cœurs lents ne supportent même pas certaines des instructions supportées par les cœurs rapides, comme AVX (ARM évite ce problème en exigeant les mêmes noyaux LITTLE et Big) Encore une fois, la plupart des applications multi-thread basées sur Windows supposent que chaque core a le même ou presque le même niveau de performance et peut exécuter les mêmes instructions, donc ce genre d'asymétrie est susceptible de résulter en moins-que- performance idéale, peut-être même des plantages si elle utilise des instructions non supportées par les cœurs plus lents. Alors qu'Intel pourrait modifier les cœurs lents pour ajouter un support d'instructions avancé afin que tous les cœurs puissent exécuter toutes les instructions, cela ne résoudrait pas les problèmes de support logiciel pour les processeurs hétérogènes.
Une approche différente de la conception d'application à propos de votre question, utiliserait le GPU pour l'accélération de parties d'applications hautement parallèles. Cela peut être fait en utilisant des API comme OpenCL et CUDA. Comme pour une solution monopuce, AMD promeut le support matériel pour l'accélération GPU dans ses APUs, qui combine un CPU traditionnel et un GPU intégré hautes performances dans la même puce, comme Heterogeneous System Architecture, même si cela n'a pas beaucoup été vu par l'industrie. de quelques applications spécialisées.
Vous avez quelque chose à ajouter à l'explication? Sonnez dans les commentaires. Vous voulez lire plus de réponses d'autres utilisateurs de Stack Exchange? Découvrez le fil de discussion complet ici.
Crédit photo: Mirko Waltermann (Flickr)
Comment installer et configurer le kit de démarrage de l'interrupteur gradateur Lutron Caseta
Les ampoules intelligentes ne sont pas le seul moyen d'obtenir des lumières télécommandées dans votre maison. Vous pouvez également installer des interrupteurs d'éclairage intelligents et les utiliser avec des ampoules. Voici comment installer et configurer le kit de démarrage pour gradateurs de lumière Caseta de Lutron CONNEXION: Interrupteurs intelligents contre ampoules intelligentes: Lequel devriez-vous acheter?
Si vous avez déjà essayé de télécharger une application pour le chargement latéral sur votre téléphone Android, vous savez à quel point cela peut être déroutant. Il existe souvent plusieurs versions de la même application conçues pour différentes spécifications d'appareil. Comment savoir quelle est la bonne?