AMD E-350 : Fusion et les solutions Mini-ITX

Publié le 04/02/2011 (Mise à jour le 22/02/2011) par
Imprimer
Intel Atom

Avant de revenir sur l’architecture des APU d’AMD, évoquons d’abord l’architecture de leur principal concurrent, à savoir l’Atom d’Intel. Afin d’obtenir une architecture basse consommation, Intel a effectué certains choix radicaux qui font que l’on rapproche souvent l’Atom aux premières générations de Pentium (celles qui précèdent le lancement du Pentium Pro). Une des particularités de l’Atom est qu’il vise aussi bien des usages mobiles (sous les 2 watts, type Smartphone) que des usages dans les Netbook et autres machines de bureau d’entrée de gamme (Nettop, PCHC).

S’il s’agit toujours d’une architecture super scalaire, elle se limite à deux instructions en simultanée (2-issue). La comparaison avec les Pentium vient du fait qu’il s’agit d’une architecture dite in order. Les unités d’exécution traitent les instructions dans l’ordre exact dans lequel elles sont décodées et placées dans le pipeline. L’inconvénient de ce type d’architecture est que le pipeline peut être bloqué si une instruction attend des données en provenance du cache ou de la mémoire.

Les architectures out of order corrigent le problème en complexifiant le pipeline et en autorisant la modification de l’ordre dans lequel les instructions seront exécutées, c’était l’une des avancées majeures apportées en son temps par le Pentium Pro. L’inconvénient d’une architecture OOO est qu’elle complexifie significativement le pipeline. Dans le cas de l’Atom, ce n’est pas tant pour économiser des transistors que pour limiter la consommation de la puce qu’Intel a préféré une architecture in order. Un compromis que l’on doit à la vocation initiale (qui peine à se concrétiser…) d’utiliser l’Atom dans des Smartphones.

Intel compense cela avec sa technologie HyperThreading. En pratique, le scheduler maintient deux files d’instructions en parallèle (une par thread matériel) ce qui génère plus d’opportunités de traitement de deux instructions en simultanée. Cette utilisation de l’HyperThreading est ici bienvenue et si elle ne compense pas tous les défauts d’une architecture in order (performances monothreadées plus faibles), les gains sont massifs dans les scénarios multithreadés :


A l’inverse, l’impact sur les situations monothreadés est inexistant. Chaque cœur d’Atom dispose d’un cache de données de niveau 1 de 24 Ko (+32 Ko pour le cache d’instructions), complété par un cache de niveau 2 de 512 Ko.

AMD Bobcat

Les coeurs x86 utilisés par les APU d’AMD ne sont pas dérivés de l’architecture K8, il s’agit d’une nouvelle architecture (nom de code K14) conçue pour l’occasion en visant des usages aux alentours de 10 watts et supérieurs. Contrairement à l’Atom, Bobcat n’a pas été prévu pour fonctionner dans des déclinaisons aux alentours de 2 watts. Un inconvénient sur le positionnement produit - AMD n’a pas de puces à proposer pour ces marchés – mais surtout un avantage technique : les choix effectués peuvent être moins drastiques.


Les cœurs x86 et les caches L2 sont à gauche. Le GPU utilise la majorité du die au milieu

Le K14 est une architecture super scalaire 2-issue, comme l’Atom. Contrairement à ce dernier, AMD a opté pour un design out of order. Une différence de taille qui permet sur le papier de faire une différence nette avec l’Atom dans les applications monothreadées. Le pipeline reste court avec 15 étapes. On notera l’utilisation de fichiers de registres physiques (PRF), une technique que l’on avait vue ces derniers temps surtout dans les GPU, et réintroduite par Intel dans Sandy Bridge (voir notre explication ici). AMD avance également que le choix des PRF influe sur la consommation électrique (une opération de copie des données est évitée, des pointeurs vers le PRF sont utilisés à leur place). Le gain, s’il doit exister, nous semble mesuré.


L’E-350 vu par hwinfo32.

On notera au rang des différences que contrairement à l’Atom, les unités d’exécutions dédiées aux entiers peuvent effectuer des multiplications. Sur l’Atom, ce sont les unités « virgule flottante » (SSE) qui s’en chargent. Autre point, Bobcat apporte un support matériel de la virtualisation, ce qui n’est pas le cas d’Atom. Notez enfin que les caches sont également relativement similaires, 32 Ko pour le L1 et 512 pour le L2, par cœur.
Vos réactions

Top articles