ARM : du PowerVR MBX Lite à l’Adreno 530

Image 1 : ARM : du PowerVR MBX Lite à l'Adreno 530

Les GPU mobiles

Après Intel, NVIDIA et AMD nous avons décidé de nous intéresser à un marché précis : celui des GPU intégrés dans les SoC. Depuis quelques années, les SoC ARM intègrent en effet des GPU parfois très performants. Des sociétés comme Imaginations (PowerVR) ARM et ses Mali ou des grands du marché comme NVIDIA sont ainsi présents sur ce marché, alors que d’autres sont attendus une seconde fois, comme AMD. Nous avons décidé de regrouper les GPU par marque pour présenter chronologiquement les solutions d’un même constructeur, avec quelques exemples d’appareils qui intègrent les GPU en question.

Les GPU mobiles sont rarement indépendants comme ceux des PC : il s’agit généralement d’un bloc qui est intégré dans un SoC (une puce complète) avec un (ou des) processeur, la gestion de la mémoire, etc. Certaines sociétés licencient la technologie, d’autres préfèrent la garder en interne.

Image 2 : ARM : du PowerVR MBX Lite à l'Adreno 530

Imagination et les PowerVR

Imagination est une société qui a proposé, il y a une bonne quinzaine d’années, des GPU pour les PC et les consoles. Les cartes de la gamme Kyro, certaines cartes Matrox ou la célèbre Dreamcast de SEGA utilisaient par exemple des GPU PowerVR. Au début des années 2000, alors que NVIDIA et ATi prenaient l’ascendant sur leurs concurrents, la société a commencé à développer des GPU basse consommation, pour les appareils mobiles. Les GPU PowerVR sont intéressants dans le monde mobile, car le fonctionnement même du GPU est adapté. En simplifiant, les GPU découpent les images à rendre en petites zones, qui sont traitées une à une, et seuls les pixels rendus à l’écran sont calculés. Cette technique permet de paralléliser facilement les traitements et diminue la demande en bande passante.

Image 3 : ARM : du PowerVR MBX Lite à l'Adreno 530

Le PowerVR MBX (2001)

Le PowerVR MBX et son pendant basse consommation le MBX Lite sont identiques techniquement, mais le second consomme moins simplement parce qu’il est généralement cadencé moins rapidement. Ce GPU a été intégré dans des SoC (comme celui du premier iPhone, du Nokia N95, etc.) mais a aussi été intégré seul dans certains produits, comme le Dell Axim 50v. On le trouve dans les SoC de Freescale (i.MX 3), Texas Instruments (OMAP2) ou Samsung. Intel l’a intégré dans certains processeurs ARM, sous le nom Intel 2700G. Le PowerVR MBX est compatible OpenGL ES 1.x, OpenGL 1.1 et DirectX 7 et est considéré comme le successeur des puces équipant les cartes Kyro.

Image 4 : ARM : du PowerVR MBX Lite à l'Adreno 530

Les Series 5 (2005 – 2010)

En 2005, Imagination a proposé une nouvelle génération de GPU, la cinquième. Les PowerVR SGX sont compatibles OpenGL ES 2.0 et ont fait (et font toujours) les beaux jours des smartphones. Il a été utilisé dans plusieurs SoC Samsung Exynos, dans l’Apple A4, dans les OMAP3 et 4 de Texas Instruments, mais aussi chez Intel. La société a en effet intégré le GPU dans certains chipsets (Poulsbo) mais aussi dans des CPU, couplés à un Atom ou un Pentium M. Dans les appareils qui utilisent le GPU, on peut noter la Freebox Révolution, le premier iPad, quelques iPhone, le Galaxy S 2 ou les Google Glass.

Différentes configurations existent, mais la plus courante est le SGX535 : compatible DirectX 9, il est doté de deux unités de calcul (USSE) dotées chacune de deux unités de calcul, soit quatre unités au total. On trouve parfois aussi les variantes 530 et 531 (moins rapides) ainsi que le 540, qui intègre quatre unités USSE (Universal Scalable Shader Engine). Enfin, le SGX545 (qui date de 2010) dispose aussi de quatre unités USSE et est compatible DirectX 10.1 et OpenGL 3.2.

Nom
SGX520
SGX530
SGX531
Date
          Juil 2005
Oct 2006
Finesse de gravure                    65 nm
Fréquence
                  200 MHz
Unités USSE
1
2
2
TMUs par USSE
111
Bus mémoire               32 – 128 bits
API               OpenGL ES 2.0
Fillrate
100 MPixels/s     200 MPixels/s
GFLOPs
0,8
1,61,6
NomSGX535SGX540SGX545
Date
          Nov 2007
Jan 2010
Finesse de gravure                    65 nm
Fréquence
                  200 MHz
Unités USSE
2
4
4
TMUs par USSE
2
2
2
Bus mémoire                32 – 128 bits
APIOpenGL ES 2.0, OpenGL 2.1, DirectX 9.0c
OpenGL ES 2.0, OpenGL 2.1OpenGL ES 2.0, OpenGL 3.2, DirectX 10.1
Fillrate
               400 MPixels/s
GFLOPs
1,63,23,2
Image 5 : ARM : du PowerVR MBX Lite à l'Adreno 530

Les Series 5 XT (2009 – 2010)

En 2009, Imagination a proposé les PowerVR Series 5 XT. Ces nouveaux GPU améliorent les performances à fréquence identique, avec des unités USSE2, mais intègrent surtout une nouveauté : le support du multicore. L’idée est simple : comme les GPU PowerVR découpent l’image en petites zones qui sont traitées une à une, il est assez simple de paralléliser le traitement.Les PowerVR Series 5 XT sont souvent utilisés dans des configurations avec plusieurs cores, que l’on appelle MP. Un PowerVR SGX543MP2 comme celui de l’Apple A5 a donc deux cores, un SGX544MP4 comme celui de la PlayStation Vita en 4, etc. S’il est techniquement possible d’utiliser seize cores, les implémentations classiques en ont deux, trois ou quatre. 

Le SGX543 et le SGX544 ont quatre unités USSE2 (Universal Scalable Shader Engine 2) par cores, alors que le SGX554 en a huit. Les GPU supportent OpenGL ES 2.x et DirectX 9.0, mais le support exact varie en fonction du GPU. On trouve le GPU essentiellement chez Apple (A5, A5X, A6, A6X) mais aussi chez Samsung (dans un Exynos) ou chez Texas Instruments.

Nom
SGX543
SGX544
SGX554
Date
Janv 2009
Juin 2010
Déc 2010
Finesse de gravure                    32 nm
Fréquence
                  200 MHz
Unités USSE2
4
4
8
TMUs par USSE2
2
2
2
Clusters
                    1 – 16
Bus mémoire               128 – 256 bits
APIOpenGL ES 2.0, OpenGL 2.x
OpenCL 1.1, DirectX 9.0
Fillrate
               3,2 GPixels/s
GFLOPs
par core

7,2
7,214,4
Image 6 : ARM : du PowerVR MBX Lite à l'Adreno 530

PowerVR Rogue (2012 – 2014)

Imagination a dévoilé en 2012 sa sixième génération de GPU, nom de code Rogue. Il s’agit d’une architecture unifiée compatible DirectX 10 (sauf le modèle G6100 et la gamme 6XE, limités à DirectX 9) et OpenGL ES 3.1, qui est notamment utilisée par Apple dans l’Apple A7. Ce GPU existe, comme les Series 5 XT, dans des configurations avec plusieurs cores.

Les constructeurs ont mis du temps à intégrer le PowerVR Rogue dans leur SoC, préférant pendant de longs mois rester sur la cinquième génération de GPU ou bien carrément passer à la concurrence. Depuis, on trouve le PowerVR G6400 (4 clusters) dans les Atom Z34x0 d’Intel, le G6430 (4 clusters) dans les Z35x0 d’Intel et l’Apple A7, le G6230 (2 clusters) dans certains SoC Allwinner et le G6200 (2 clusters) dans quelques SoC Mediatek. Enfin, l’Apple A8 intègre un PowerVR GX6450 (4 clusters) tandis que l’Apple A8X utilise un GX6850 (8 clusters)…

Nom
G6100
G6200
G6230
Date
Févr 2013
Janv 2012
Juin 2012
Finesse de gravure                    28 nm
Fréquence
                  600 MHz
Unités USC
1
2
2
TMUs par USC
2
2
2
APIOpenGL ES 3.1
OpenGL 2.x
OpenCL 1.2
DirectX 9.0 L3
    OpenGL ES 3.1
    OpenGL 3.2
    OpenCL 1.2
    DirectX 10.0
Fillrate
               2,4 GPixels/s
               2,4 GTexels/s
GFLOPs
par core

(FP16,
FP32)
57,6
38,4
76,8
76,8
115,2
76,8
Nom
G6400
G6430
G6630
Date
Janv 2012
Juin 2012
Nov 2012
Finesse de gravure                    28 nm
Fréquence
                  600 MHz
Unités USC
4
4
6
TMUs par USC
2
2
2
API         OpenGL ES 3.1
           OpenGL 3.2
     OpenCL 1.2, DirectX 10.0
Fillrate
    4,8 GPixels/s
    4,8 GTexels/s
7,2 GPixels/s
7,2 GTexels/s
GFLOPs
par core
(FP16,
FP32)
153,6
153,6
230,4
153,6
345,6
230,4
Image 7 : ARM : du PowerVR MBX Lite à l'Adreno 530

PowerVR Series 7 (2014 – 2015)

En novembre 2014, Imagination dévoile sa nouvelle gamme de GPU, les Series 7. Deux versions coexistent : les PowerVR Series 7XE et les PowerVR Series 7XT. Compatibles OpenGL ES 3.1, OpenCL 1.2 “embedded profile”, ainsi qu’OpenGL 3.3 et DirectX 10.0 en ce qui concerne les 7XT, ces GPU ne sont pas encore utilisés par les constructeurs pour leurs différents SoC, à une exception près : c’est un GT7600 avec 6 clusters – soit 12 unités de calcul – qu’Apple utilise dans son Apple A9. Notons au passage que le GPU le plus puissant, le GT7900, embarque 16 clusters, soit un total de 32 unités de calcul.

Nom
GT7200
GT7400
GT7600
Date
          Novembre 2014
Fréquence
               650 MHz
Unités USC
2
46
TMUs par USC
4
812
APIOpenGL ES 3.1, OpenGL 3.3
OpenCL 1.2 embedded profile
          DirectX 10.0
GFLOPs
par core

(FP16,
FP32)
166,40
83,20
332,80
166,40
500
250
NomGT7800
GT7900
Date
          Novembre 2014
Fréquence
650 MHz800 MHz
Unités USC
8
16
TMUs par USC
1632
APIOpenGL ES 3.1, OpenGL 3.3
OpenCL 1.2 embedded profile
          DirectX 10.0
GFLOPs
par core

(FP16,
FP32)
666
333
1600
800
Image 8 : ARM : du PowerVR MBX Lite à l'Adreno 530

AMD et Qualcomm (2002 – 2008)

Avant de parler des Adreno de Qualcomm, il faut parler des Imageon d’ATi et AMD. Cette branche dédiée aux GPU mobiles a été créées en 2002 et des GPU sont arrivés assez rapidement sur le marché. La console Zodiac, sous Palm OS, utilisait par exemple un GPU ATi Imageon. En 2006, ATi a été racheté par AMD, et en 2008, la branche mobile a été revendue à Qualcomm.

La société américaine a renommé un GPU AMD — le Z430 — en Adreno 200 (Adreno est une anagramme de Radeon) avant de l’intégrer dans ses puces Snapdragon, mais on peut le retrouver sous son ancien nom dans quelques SoC, notamment les i.MX 5 de Freescale.

Image 9 : ARM : du PowerVR MBX Lite à l'Adreno 530

Adreno 2xx (2008 – 2013)

Tous les Adreno 200, du 200 classique au 230, sont assez proches techniquement : ils sont basés sur une architecture unifiée VLIW 5-way, sont compatibles OpenGL ES 2.0 et sont compatibles DirectX Mobile (le pendant Windows CE de DirectX). Les dernières variantes en date, les 225 et 230, prennent en charge DirectX 9, mais les performances sont assez faibles.

Qualcomm a utilisé l’Adreno 200 dans toutes ses gammes, avec des cores ARM11, des cores Scorpion (Snpadragon), des cores Krait et même des cores Cortex A5. Il a été utilisé dans les Snapdragon S2, S3 et des dizaines d’autres. Les appareils qui utilisent un GPU Adreno 200 sont très nombreux, avec énormément de modèles Samsung, HTC, BlackBerry, etc. Il est intégré dans la majorité des appareils sous Windows Phone 7 et on trouve même la variante 225 dans des appareils récents comme le BlackBerry Z10.

Nom
Adreno 200
Adreno 200
enhanced
Adreno 203
Finesse de gravure
65 nm
          45 nm
Fréquence
133 MHz
200/245 MHz
245/294 MHz
ALUs
8816
APIOpenGL ES 2.0, OpenVG 1.1
Fillrate
133 Mpixels/s
200/245 MPixels/s
245/294 MPixels/s
GFLOPS
2,1
3,2/3,9
7,8/9,4
Nom
Adreno 205
Adreno 220
Adreno 225
Finesse de gravure
          45 nm
28 nm
Fréquence
245/266 MHz
266 MHz
200-400 MHz
ALUs
163232
APIOpenGL ES 2.0, OpenVG 1.1
Fillrate
245/266 Mpixels/s
532 MPixels/s
800 MPixels/s
GFLOPS
7,8/8,5
17
12,8 à 25,6
Image 10 : ARM : du PowerVR MBX Lite à l'Adreno 530

Adreno 300 (2012 – 2014)

La gamme Adreno 300 comprend des GPU compatibles avec OpenGL ES 3.x mais aussi DirectX 9.0 (9_3) et OpenCL 1.1 (“embedded profile”). On trouve les Adreno 300 dans des SoC récents, généralement des Snapdragon S4, 200, 400, 600 et 800. La puissance varie en fonction des variantes : un Adreno 302 a seulement 6 unités de calcul (dans les Snapdragon 200) alors qu’un Adreno 330 a 32 unités et une fréquence généralement plus élevée.

C’est le GPU que l’on retrouve dans des smartphones comme le LG G3, le Galaxy S 5 et tous les modèles équipés d’un Snapdragon 800 ou 801.

Nom
Adreno 302
Adreno 304
Adreno 305
Finesse de gravure
               28 nm
Fréquence
400 MHz
400 MHz
400/450 MHz
ALUs
242424
APIOpenGL ES 3.0, OpenVG 1.1
OpenCL 1.1 embedded profile
DirectX 11.1 (feature level 9_3)
Fillrate
?
?
800 MPixels/s
GFLOPS
19,2
19,2
19,2/21,6
Nom
Adreno 306
Adreno 320
Adreno 330
Finesse de gravure
               28 nm
Fréquence
450 MHz
400/450 MHz
450-578 MHz
ALUs
2464-96128
APIOpenGL ES 3.0, OpenVG 1.1
OpenCL 1.1 embedded profile
DirectX 11.1 (feature level 9_3)
Fillrate
?
1,6-2,7 GPixels/s
3,6-4,62 GPixels/s
GFLOPS
21,6
57,6-97,2
129,8-166,5
Image 11 : ARM : du PowerVR MBX Lite à l'Adreno 530

Adreno 400 (2014)

Dans le récent Snapdragon 805 ainsi que dans les Snapdragon 610, 615, 616, 617, 808 et 810, Qualcomm intègre la quatrième génération d’Adreno (405, 418, 420 ou 430 selon le cas). On a donc un GPU plus rapide, mais surtout compatible avec DirectX 11.2, OpenGL 3.1, OpenVG 1.1 et OpenCL 1.2 Full Profile. Le Snapdragon 805 se retrouve dans quelques modèles haut de gamme, comme une variante du Galaxy S 5 de Samsung, le Nexus 6 de Google ou encore les Galaxy Note 4 et Note Edge.

Nom
Adreno 405
Adreno 418/420
Adreno 430
Finesse de gravure
               28 nm
20 nm
Fréquence
550 MHz
500/600 MHz
500-650 MHz
ALUs
48128192
APIOpenGL ES 3.1, OpenVG 1.1
OpenCL 1.2 full profile
DirectX 11.2 (feature level 11_1)
Fillrate
?
4/4,8 GPixels/s
4,8-6,6 GPixels/s
GFLOPS
59,4
144/172,8
324-420
Image 12 : ARM : du PowerVR MBX Lite à l'Adreno 530

Adreno 500 (2015 – 2016)

En 2015, Qualcomm annonce plusieurs nouveaux SoC Snapdragon tels que les Snapdragon 430, 618, 620 et 820. A l’intérieur, on trouve une nouvelle génération d’Adreno : les 500 Series.

Même s’ils ne sont pas encore disponibles sur le marché, on connait d’ores et déjà leurs principales caractéristiques. Les Adreno 530 et 510 seraient ainsi compatibles OpenGL ES 3.2, OpenCL 2.0 et DirectX 12 (feature level 12_1). L’Adreno 505 serait quant à lui limité aux API OpenGL ES 3.1 et DirectX 11.2. Cadencé à 650 Mhz, l’Adreno 530 serait en outre le premier GPU de Qualcomm à bénéficier d’une gravure en 14 nm (les Adreno 505 et 510 restant à une finesse de gravure de 28 nm).

Nom
Adreno 505
Adreno 510
Adreno 530
Finesse de gravure
               28 nm
14 nm
Fréquence
?
?
650 MHz
ALUs
??256
APIOpenGL ES 3.1
OpenCL 2.0
DirectX 11.2
     OpenGL ES 3.2
     OpenCL 2.0
DirectX 12 (feature level 12_1)
Fillrate
?
?
8/9,6 GPixels/s
GFLOPS
?
?
550-600
Image 13 : ARM : du PowerVR MBX Lite à l'Adreno 530

ARM et les Mali

En 2006, ARM a acheté une société spécialisée dans les GPU, Falanx. Cette entité, basée en Norvège, est devenue ARM Norway et produit des GPU qu’ARM propose sous licence, les Mali. Les GPU ont des noms de code nordiques (Utgard, Midgard) et sont de plus en plus utilisés, spécialement par les constructeurs qui proposent des SoC d’entrée de gamme. La raison est simple : ARM propose des SoC sous licence qui intègrent des cores ARM et des cores Mali directement, ce qui permet une production rapide.

Image 14 : ARM : du PowerVR MBX Lite à l'Adreno 530

Mali 400 et 450 (2008)

Les Mali 400 et 450 sont les versions d’entrée de gamme (nom de code Utgard) chez ARM. Comme les PowerVR Series 5 XT, ils sont utilisables dans des configurations à plusieurs cores : on trouve généralement un à quatre cores avec le Mali 400 (Mali 400MP, 400MP2 ou MP4). Le Mali 450, plus récent, peut fonctionner avec plus de cores, jusqu’à huit. Le Mali 400MP4 est le GPU utilisé dans certains Exynos chez Samsung, notamment celui du célèbre Galaxy S 3 ou du premier Galaxy Note. Le Mali 450 est plus rare, et est dédié à l’entrée de gamme. Les Mali 400 et 450 sont dédiés aux jeux, et sont compatibles OpenGL ES 2.0.

Nom
Mali-400MP
Mali-450MP
Finesse de gravure
          40/28 nm
Fréquence
500 MHz
650 MHz
Cores
1-41-8
API       OpenGL ES 2.0
          OpenVG 1.1
Fillrate
500 Mpixels/s
650 MPixels/s
GFLOPS par core
5
14,6
Image 15 : ARM : du PowerVR MBX Lite à l'Adreno 530

Mali T600 (2012 – 2014)

En 2012, on a vu apparaître les premiers GPU de la famille Mali T600. Contrairement aux modèles de la famille 400, ils sont destinés aux jeux et aux calculs, avec une compatibilité OpenCL. Ils sont aussi plus modernes, avec le support d’OpenGL ES 3.x et de DirectX 9.0. Les Mali T600 restent assez rares, on trouve essentiellement ce type de GPU dans les Exynos 5 de Samsung, couplés à des Cortex A15. Samsung a notamment équipé son premier Chromebook avec un GPU de ce type.

Image 16 : ARM : du PowerVR MBX Lite à l'Adreno 530

Mali T700 (2013)

La génération suivante de GPU Mali, la T700, est présente dans les premiers SoC 64 bits. Cette évolution des T600 — il s’agit toujours de l’architecture Midgard — est notamment compatible DirectX 11.1 (feature_level 9_3), OpenGL ES 3.1 et OpenCL 1.1.

Les Mediatek MT6732 et MT6752 utilisent un GPU Mali T760, tout comme les Samsung Exynos 7 Octa (en versions MP6 ou MP8 selon le cas). Le Rockchip RK3288 intègre de son côté un Mali T764, tandis que le Mediatek MT6753 embarque un GPU Mali T720MP3.

Image 17 : ARM : du PowerVR MBX Lite à l'Adreno 530

Mali T800 (2015 – 2016)

D’ici la fin de l’année, ARM prévoit de lancer ses premiers GPU T800 Series : les Mali T820, T830 et T860. Gravés en 28 nm et cadencés à 650 MHz, ces GPU sont compatibles DirectX 11.1 (feature level 9_3, sauf le T860 qui bénéficie d’une compatibilité DirectX 11.2 feature level 11_1), OpenGL ES 3.1 et OpenCL 1.2 Full Profile. Ils reposent toujours sur l’architecture Midgard, qui passe pour l’occasion en quatrième génération. ARM prévoit en outre de lancer un GPU encore plus puissant au cours du deuxième trimestre 2016 : le Mali T880. Il bénéficiera cette fois-ci d’une gravure en 16 nm et d’une fréquence de fonctionnement revue à la hausse (850 MHz).

Image 18 : ARM : du PowerVR MBX Lite à l'Adreno 530

NVIDIA et le monde mobile

NVIDIA propose depuis quelques années des GPU « mobiles », mais les premiers essais n’ont pas été très concluants. Les Tegra des premières générations ont bien été utilisés sur quelques appareils, comme le Kin ou le Zune HD, mais ils n’ont jamais brillé. Mais NVIDIA s’est rattrapé assez rapidement le Tegra 2, une puce qui a eu beaucoup de succès à son époque.

Image 19 : ARM : du PowerVR MBX Lite à l'Adreno 530

Tegra 2 (2010)

Tegra 2, c’est le premier SOC dual core (deux Cortex A9) et un GPU assez correct. Il était compatible OpenGL ES 2.0 et n’était pas unifié : il intégrait quatre unités de Vertex Shader quatre unités de Pixel Shader. Tegra 2 avait quelques défauts, dont l’absence des instructions NEON et un moteur de décodage vidéo perfectible, mais la puce a tout de même eu beaucoup de succès. Motorola, Samsung, LG, Sony, beaucoup de grands noms ont proposé des appareils à base de Tegra 2.

Image 20 : ARM : du PowerVR MBX Lite à l'Adreno 530

Tegra 3 (2011)

Tegra 3, nom de code Kal-el, est une évolution de Tegra 2. Le processeur passe à quatre cores, et le GPU passe à « douze » cores : huit unités de Pixel Shader, quatre unités de Vertex Shader. Avec une fréquence plus élevée et un core « compagnon » pour limiter la consommation, Tegra 3 trouve aussi son petit succès. Les appareils emblématiques sont la première Surface RT, le HTC One X ou la première Nexus 7. Le GPU, même s’il est performant, souffre de ses fonctions : il n’est pas unifié et est uniquement compatible OpenGL ES 2.0.

Image 21 : ARM : du PowerVR MBX Lite à l'Adreno 530

Tegra 4 et Tegra 4i (2013)

Avec Tegra 4 et Tegra 4i, NVIDIA n’a pas réussi à avoir le même succès qu’avec Tegra 2 et 3. Le CPU évolue — en passant au Cortex A15 pour Tegra 4 — mais le GPU ne bouge pas, les fonctions restent identiques alors que la concurrence est passée à OpenGL ES 3.0. La solution de NVIDIA pour garder de la puissance est simple : augmenter drastiquement le nombre d’unités. Tegra 4i a 60 unités (48 unités de Pixel Shader, 12 unités de Vertex Shader) et Tegra 4 en a 72 (48 Pixel Shader et 24 Vertex Shader). Peu de produits sortent, et beaucoup sont directement issus de chez NVIDIA, comme la Shield ou la Tegra Note 7.

Image 22 : ARM : du PowerVR MBX Lite à l'Adreno 530

Tegra K1 (2014)

Avec Tegra K1, c’est la renaissance. NVIDIA propose un produit avec un GPU moderne — en architecture Kepler, comme les GPU des PC — et rapide, avec 192 unités de calcul unifié. Si NVIDIA compare parfois le K1 à la GeForce GTX Titan — les fonctions sont les mêmes —, le GPU est évidemment très limité au niveau de la puissance brute, mais reste pourtant bien plus rapide que la concurrence dans le monde mobile. Pour le moment, les produits restent rares, mais la société a proposé récemment une tablette destinée aux joueurs, la Shield Tablet. Tegra K1 est compatible OpenGL ES 3.x et DirectX 11.2, comme les meilleurs GPU de Qualcomm, Imagination ou ARM.

Image 23 : ARM : du PowerVR MBX Lite à l'Adreno 530

Tegra X1 (2015)

En 2015, NVIDIA a fait évoluer son Tegra K1 en Tegra X1 (nom de code Erista) : le GK20A (Kepler) et ses 192 cores laissent la place au GM20M (Maxwell) avec 256 cores (ainsi que 16 unités de texturing et 16 unités de rendu). Les fréquences évoluent également puisque l’on passe de 852 MHz à 1000 MHz.

Le Tegra X1 est d’ores et déjà utilisé par quelques appareils comme les Shield Android TV et Shield Portable P2523. On trouve également ce SoC dans la tablette Pixel C de Google.

Image 24 : ARM : du PowerVR MBX Lite à l'Adreno 530

Vivante, le challenger

Dans le petit monde des fabricants de GPU, il y a Vivante. La société américaine propose des GPU mobiles performants, mais ils sont rares dans l’absolu. La raison est simple : les SoC équipés de GPU de la marque sont des modèles que l’on trouve dans le monde de l’embarqué (chez Marvell, le i.MX6 de Freescale, etc.) ou rarement en Europe, comme le K3V2 d’Huawei, qui équipe les smartphones de la société chinoise. Les GCx000 ne sont pas de mauvais GPU — ils sont compatibles DirectX 11 et OpenGL ES 3.x, mais sont trop rares pour être vraiment reconnus (et pris en charge dans les jeux).

Image 25 : ARM : du PowerVR MBX Lite à l'Adreno 530

DMP et le PICA200

Terminons par DMP, une société japonaise. Ses GPU ne sont pas utilisés dans les smartphones, mais dans une série d’appareils mobiles à succès : les dernières consoles de Nintendo. En effet, le PICA200 est intégré dans la Nintendo 3DS, la Nintendo 3DS XL et la Nintendo 2DS. Ce GPU assez ancien — il a été annoncé en 2006 — n’est pas très complet, il se limite par exemple uniquement à OpenGL ES 1.1. Malgré tout, il est suffisant pour la console de Nintendo et ses deux écrans dont la définition reste assez faible.