Adreno est une famille de processeurs graphiques produits par la société américaine Qualcomm à destination de sa famille de SoC d'architecture ARM Snapdragon. Ces processeurs graphiques étaient à l'origine la famille de processeurs graphiques Imageon d'AMD rachetée par Qualcomm en .
Les pilotes officiels de ce processeur graphique sont tous propriétaires, bien que le projet de pilote libre Freedreno commencé en fin 2011, avance assez rapidement[1]. Ce dernier, utilisant la technologie Gallium3D est inclus dans le projet Mesa 3D[2]. C'est en le seul pilote de processeur graphique accompagnant les SoC ARM inclus dans Mesa. Ce pilote, dans la version 11.1 de Mesa 3D sortie le , prend en charge OpenGL 3.1 avec les séries 300 (a3xx) et 400 (a4xx)[3].
Name | Microarchitecture | Fab (nm) | Fréquence [MHz] | Technologie de mémoire | Fillrate | GFLOPS | API (version) | Utilisé dans les snapdragon | Références | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Type | ALUs
(SIMD) [FP32] |
Mémoire intégrée au GPU | TMU | Bande passante | Triangle
[MT/s] |
Pixel
[GP/s] |
Texture
[GT/s] |
(FP64) | (FP32) | (FP16) | Vulkan | OpenGL ES | OpenVG | OpenCL | OpenGL | Direct3D | |||||
Adreno 1xx series | |||||||||||||||||||||
Adreno 120 | Pipeline à fonction fixe | 1.1 | 1.1 | ? | [4] | ||||||||||||||||
Adreno 130 | ? | ? | 90 or 65 | ? | 4 | 0.133 | 1.2 | Direct3D Mobile | MSM7x00, MSM7x00A, MSM7x01, MSM7x01A | [6],[7],[8] | |||||||||||
Adreno 2xx series - yamato | |||||||||||||||||||||
Adreno 200 (AMD Z430) | Unified shader model 5-way VLIW[9] |
8
(2) |
256 KB | 65 | 133 | LPDDR Single-channel
166 MHz (1.33 GB/s) |
22.85 | 0.133 | 0.53 | 2.12 | 4.25 | 2.0 | 1.1 | 1.4 (freedreno driver) | 11 (feature level 9_3) [10] |
Snapdragon S1 (MSM7227, MSM7627 QSD8250, QSD8650), Freescale i.MX51, i.MX53 | |||||
Adreno 200 'enhanced' | 45 | 200 245 | LPDDR Single-channel 200 MHz (1.6 GB/s) | 42 | 0.200 0.245 | 0.80 0.98 | 3.20 3.92 | 6.40 12.8 | Snapdragon S1 (MSM7227A, MSM7627A, MSM7225A, MSM7625A) | ||||||||||||
Adreno 203 | 16
(4) |
245 294 | LPDDR2 Single-channel 300 MHz (2.4 GB/s) |
40.8 49.0 | 0.245 0.294 | 1.96 2.35 | 7.84 9.40 | 15.6 18.8 | Snapdragon S4 Play (MSM8225, MSM8625), Snapdragon 200 (MSM8225Q, MSM8625Q) | ||||||||||||
Adreno 205 | 245 266 | LPDDR2 Dual-channel 333 MHz (5.3 GB/s) |
40.8 44.3 | 0.245 0.266 | 1.96 2.12 | 7.84 8.51 | 15.6 17.0 | Snapdragon S2 (MSM7x30, MSM8x55, APQ8055) | |||||||||||||
Adreno 2xx series - leia | |||||||||||||||||||||
Adreno 220 | Unified shader model 5-way VLIW[9] |
32
(8) |
512 KB | 45 | 266 | LPDDR2 Single-channel 333 MHz (2.67 GB/s) | 88.7 | 0.532 | 4.25 | 17.0 | 34.0 | NC | 2.0 | 1.1 | NC | 1.4 (freedreno driver) | 11 (feature level 9_3) [10] |
Snapdragon S3 (APQ8060, MSM8x60) | |||
Adreno 225 | 28 | 200 300 400 | LPDDR2 Dual-channel 500 MHz (8 GB/s) | 133.3 | 0.8 | 3.20 4.80 6.40 | 12.8 19.2 25.6 | 25.6 38.4 51.2 | Snapdragon S4 Plus (APQ8060A, MSM8x60A, MSM8960) | [11] | |||||||||||
Adreno 3xx series - oxili | |||||||||||||||||||||
Adreno 304 | Unified shader model Scalar instruction set[12] |
24
[24] |
96 KB | 28 | 400 | LPDDR2/3 Single-channel 384-533 MHz (3.1-4.3 GB/s) | 4.80 | 19.2 | 38.4 | NC | 3.0[10] (freedreno driver: 3.0, 3.1 incomplete, 3.2 partial) | 1.1 | 1.1 embedded profile | 3.1 (freedreno driver, 3.2 incomplete, 3.3 complete) | 11 (feature level 9_3) [10] |
Snapdragon 208, Snapdragon 210, Snapdragon 212 | |||||
Adreno 305 (1re Gen.) | 256 KB | 400 450 | LPDDR2 Single-channel 400 MHz (3.2 GB/s) | 66.7 75 | 0.8 | 4.80 5.40 | 19.2 21.6 | 38.4 43.2 | Snapdragon S4 Plus (MSM8x27) | ||||||||||||
Adreno 305 (2de Gen.) | 128 KB | 400 450 | LPDDR2/3 Single-channel 533 MHz (4.3 GB/s) | 66.7 75 | 0.8 | 4.80 5.40 | 19.2 21.6 | 38.4 43.2 | Snapdragon 200 (MSM8210, MSM8610, MSM8212, MSM8612) Snapdragon 400[13] (MSM8x26, MSM8x28, MSM8x30, MSM8x30AB, APQ8026, APQ8030) |
[14] [15] | |||||||||||
Adreno 306 | 400 | LPDDR2/3 Single-channel 32-bit 533 MHz (4.2 GB/s) | 84.3 | 0.8 | 4.80 | 19.2 | 38.4 | Snapdragon 410 (MSM8916), Snapdragon 412 (MSM8916v2) | [16] | ||||||||||||
Adreno 308 | 500 | LPDDR3 Single-channel 667 MHz (5.34 GB/s) | 105.4 | 1.0 | 6.00 | 24.0 | 48.0 | Snapdragon 425 (MSM8917) Snapdragon 427 (MSM8920) | |||||||||||||
Adreno 320 (1re Gen.) | 64
[64] |
512 KB[16] | 400 | LPDDR2 Dual-channel 533 MHz (8.53 GB/s) | 225 | 1.6 | 3.2 | 12.8 | 51.2 | 102.4 | Snapdragon S4 Pro (MSM8960T, APQ8064, APQ8064-1AA), Snapdragon S4 Prime (MPQ8064) | [17] | |||||||||
Adreno 320 (2de Gen.) | 96
[96] |
400 450 | LPDDR3 Dual-channel 32-bit (64-bit) 600 MHz (9.6 GB/s) | 225 253.1 | 2.4 2.7 | >3.2 | 19.2 21.6 | 76.8 86.4 | 153.6 172.8 | Snapdragon 600 (APQ8064T, APQ8064AB) | [17] | ||||||||||
Adreno 330 | 128
[128] |
1024 KB | 450 550 578 | LPDDR3 Dual-channel 32-bit (64-bit) 800 MHz (12.8 GB/s) | 253.1 309.4 325.1 | 3.6 4.4 4.624 | 28.8 35.2 36.9 | 115.2 140.8 147.9 | 230.4 281.6 295.9 | Snapdragon 800 (MSM8974, APQ8074), Snapdragon 801 (MSM8274AB, MSM8974AB, MSM8974AC) | |||||||||||
Adreno 4xx series | |||||||||||||||||||||
Adreno 405 | Unified shader model | 48
[48] |
256 KB | 28 | 550 | LPDDR3 Single-channel 667-933 MHz (5.34-7.46 GB/s) | 52.8 | NC | 3.2 (freedreno driver: 3.0, 3.1 incomplete, 3.2 partial) | 1.1 | 1.2 full profile | 3.1 (freedreno driver, 3.2 incomplete, 3.3 complete) | 11 (11_1)[10] |
Snapdragon 415 (MSM8929), Snapdragon 610 (MSM8936), Snapdragon 615 (MSM8939), Snapdragon 616 (MSM8939v2), Snapdragon 617 (MSM8952) | |||||||
Adreno 418 | 128
[128] |
512 KB | 20 | 600 | LPDDR3 Dual-channel 32-bit (64-bit) 933 MHz (14.9 GB/s) | 153.6 | 1.0 [18] | Snapdragon 808 (MSM8992) | |||||||||||||
Adreno 420 | 1536 KB | 28 | 500
600 |
LPDDR3 Dual-channel 64-bit (128-bit) 800 MHz (25.6 GB/s) | 281.3
337.5 (0.56[19] Tr/Hertz) |
4
4.8 (8.2 Px/Hertz) |
128
153.6 |
1.0 [note 2] | Snapdragon 805 (APQ8084) | [20] | |||||||||||
Adreno 430 | 256
[256] |
20 | 500
600 650 |
LPDDR4 Dual-channel 32-bit (64-bit) 1 600 MHz (25.6 GB/s) | ? | 4.8
6.0 6.6 |
324
420 |
1.0 [18] | Snapdragon 810 (APQ8094, MSM8994) | ||||||||||||
Adreno 5xx series | |||||||||||||||||||||
Adreno 504 | Unified shader model + Unified memory | ? | ? | 12 | ? | LPDDR3 Single-channel 800 MHz (6.4 GB/s) | ? | ? | ? | ? | 1.0[18] | 3.2[21] (freedreno driver: 3.1, 3.2 partial) | ? | 2.0 Full | 3.1 (freedreno driver, 3.2 incomplete, 3.3 complete) | 11 (11_1) |
Snapdragon 429 | ||||
Adreno 505 | 48
[48] |
128 + 8 KB | 28 | 450 | ? | 48.6 | Snapdragon 430 (MSM8937), Snapdragon 435, Snapdragon 439 | ||||||||||||||
Adreno 506 | 96
[96] |
14 | 600
650 |
LPDDR3 Single-channel 933 MHz (7.46 GB/s) | ? | ? | ? | 115.2
124.8 |
Snapdragon 450, Snapdragon 625, Snapdragon 626, Snapdragon 632 | ||||||||||||
Adreno 508 | 128
[128] |
650 | LPDDR4 Dual‑channel 16‑bit (32-bit) 1 333 MHz (10.66 GB/s) | ? | ? | ? | 163.2 | Snapdragon 630 | |||||||||||||
Adreno 509 | 256 + 16 KB | 720 | LPDDR4 Dual‑channel 32‑bit (64-bit) 1 333 MHz (21.33 GB/s) | ? | ? | ? | 184.3 | Snapdragon 636 | |||||||||||||
Adreno 510 | 256 KB | 28 | 600 | LPDDR3 Dual‑channel
32‑bit (64-bit) 933 MHz (14.9 GB/s) |
? | ? | ? | 153.6 | 3.2 (3.1 + AEP) (freedreno driver: 3.1, 3.2 partial) | Snapdragon 650 (MSM8956), Snapdragon 652 (MSM8976),
Snapdragon 653 (MSM8976PRO) |
|||||||||||
Adreno 512 | 256 + 16 KB | 14 | 850 | LPDDR4 Quad-channel 16-bit (64-bit)
1 866 MHz (29.8 GB/s) |
? | ? | ? | 217.6 | Snapdragon 660 (MSM8976 Plus) | ||||||||||||
Adreno 530 | 256
[256] |
1024 KB | 510
624 653 |
? | 6.7
8.1 |
7.7
8.1 |
407.4
498.5 |
12 (11_1) |
Snapdragon 820 (MSM8996),
Snapdragon 821 (MSM8996PRO) |
||||||||||||
Adreno 540 | 384
[384] |
10 | 710 | >450 | ? | 11.36 (16 Texel/Hertz) [23],[24] | 567 | Snapdragon 835 (MSM8998) | |||||||||||||
Adreno 6xx series | |||||||||||||||||||||
Adreno 605 | Unified shader model + Unified memory | 128+8 KB | 14 | 1.0 and 1.1[25],[18] | 3.2 | 2.0 Full | WIP (freedreno driver) | 12
(12_1) |
|||||||||||||
Adreno 610 | ? | 11 | 273 | Snapdragon 460 Snapdragon 662 Snapdragon 665 |
[26] | ||||||||||||||||
Adreno 612 | 256+16 KB | 845 | LPDDR4X Dual‑channel
16‑bit (32-bit) 1 866 MHz (14.9 GB/s) |
Snapdragon 675 Snapdragon 678 |
|||||||||||||||||
Adreno 615 | 256
[128] |
512 KB | 10 | 700 | 358.4 | QCS603, QCS605, Snapdragon 670 | [27],[28] | ||||||||||||||
Adreno 616 | 750 | 384 | Snapdragon 710 Snapdragon 712 |
||||||||||||||||||
Adreno 618 | 8 | 700
825 |
?
422 |
Snapdragon 720G Snapdragon 730 Snapdragon 730G Snapdragon 732G Snapdragon 7c |
[30] | ||||||||||||||||
Adreno 620 | 384
[192] |
7 | 625 750 |
LPDDR4X Dual-channel 16-bit (32-bit)
2 133 MHz (17 GB/s) |
6.7/8.1 | ? | Snapdragon 765 Snapdragon 765G Snapdragon 768G |
||||||||||||||
Adreno 630 | 512
[256] |
1024 KB | 10 | 710 | LPDDR4X Quad-channel 16-bit (64-bit)
1 866 MHz (29.9 GB/s) |
>500 | ? | 15.4 | 184 | 727 | 1474 | Snapdragon 845 Snapdragon 850 |
[31],[32],[33],[34] | ||||||||
Adreno 640 | 768
[384] |
12*2[35] | 7 | 585 675 |
LPDDR4X Quad-channel 16-bit (64-bit)
2 133 MHz (34.13 GB/s) |
? | 9.4 | 28.1 | 242
279 |
954 [29] 1037 |
1853.3 [36] | Snapdragon 855/855+ | [37],[31] | ||||||||
Adreno 650 | 1024
[512] |
? and 300 Go/s[38] | 24*2[35] | 587
670 |
LPDDR4X or LPDDR5 Quad-channel 16-bit (64-bit)
2 133 MHz ou 2 750 MHz 33.4GB/s or 44.0GB/s |
14.x (est.) [35] | 28.1 (est.) [35] | 313
344 |
1244 | 2000
2752 |
Snapdragon 865/865+ | [31],[40] | |||||||||
Adreno 660 | Snapdragon 888 | ||||||||||||||||||||
Adreno 675 | ? | ? | 590 | LPDDR4X Quad-channel 16-bit (64-bit)
2 133 MHz (34.13 GB/s) |
388 | 1550 | 3100 | Snapdragon 8c | [41] | ||||||||||||
Adreno 680 | 1536
[768] |
? | 590 | LPDDR4X Octa-channel 16-bit (128-bit)
2 133 MHz (68.26 GB/s) |
461 | 1842.5 [42] | 3685 [43] | Snapdragon 8cx, 8CX Gen 2 | [43] | ||||||||||||
Adreno 685 | ? | ~2100 [44] | Microsoft SQ1 | ||||||||||||||||||
Nom | Microarchitecture | Fab (nm) | Fréquence | Technologie de mémoire | Fillrate | (FP64) | (FP32) | (FP16) | API (version) | Utilisé dans les snapdragon | Références | ||||||||||
Type | ALUs
[FP32] |
Mémoire intégrée au GPU | TMU | Bande passante | Triangle
[MT/s] |
Pixel
[GP/s] |
Texture
[GT/s] |
GFLOPS | Vulkan | OpenGL ES | OpenVG | OpenCL | OpenGL | Direct3D |