ARM a présenté DynamiQ, une évolution de big.LITTLE qui vise à associer différents types de cores de façon plus simple et efficace. Pour rappel, big.LITTLE autorisait l'association de cores hautes performances, dédiés aux applications gourmandes et calculs intensifs tandis que d'autres cores, plus économes mais plus lents se chargaient du reste des tâches, plus légères. Ainsi, on peut profiter d'une grosse puissance de calcul sans pâtir des inconvénients qui accompagnent les puces de ce genre : chauffe, consommation et donc autonomie en baisse et encombrement supérieur.

La principale différence concerne la possibilité de placer des petits et des gros cores dans un même cluster grâce à DynamiQ, alors qu’avec big.LITTLE, il fallait créer un cluster pour chacun des groupes. Chaque cluster peut en outre recevoir 8 CPU, ce qui permet de combiner 8 cores de n’importe quelle manière (1+7, 2+6, 3+5 ou 4+4).

Les clusters sont ensuite divisés en groupes à l’intérieur desquels la tension est commune. Et si chaque core peut être désactivé à la demande, ils doivent tous fonctionner à la même fréquence. On peut ensuite créer jusqu’à 8 groupes, ce qui autorise donc en théorie de placer chaque core dans son propre groupe, mais cette approche nécessitant un régulateur de tension pour chaque groupe, il est plus probable qu’on conserve de 2 à 4 cores identiques par groupe.

Le cache est aussi modifié dans ces clusters. Alors qu’avec big.LITTLE, les cores à l’intérieur d’un cluster avaient accès à un L2 partagé, ils peuvent désormais embarquer leur propre cache, et DynamiQ ajoute un 3e niveau de cache, partagé et optionnel. Ce L3 peut être partitionné de façon asymétrique, ce qui permettrait par exemple d’attribuer 1,5 Mo à 2 gros cores, puis 1 Mo à partager entre les 4 petits cores restants (dans le cas d’une topologie 2+4 avec 4 Mo de L3). Puis, si certains cores se voient désactivés, le partitionnement pourra être revu à la volée. Ce cache peut en outre être accédé par des accélérateurs externes, comme par exemple un GPU. Il est même possible, dans certains cas, d’accéder au L2 d’un core spécifique.

Enfin, les interactions entre les caches des différents CPU se font aussi plus rapidement, ce qui facilitera les échanges entres les cores.

Cette nouvelle technologie est compatible avec les Cortex-A75 et Cortex-A55, de sorte que seuls les nouveaux SoC se basant sur ces designs pourront en profiter.

Rejoignez la discussion !

avatar