Mali (GPU)
The Mali series of graphics processing units (GPUs) are semiconductor intellectual property cores produced by ARM Holdings for licensing in various ASIC designs by ARM partners.
This line of GPUs was a result of ARM Holdings acquisition of Falanx Microsystems A/S June 23, 2006.[1]
Technical details
Like other embedded IP cores for 3D rendering acceleration, the Mali GPU does not include display controllers driving monitors (such as the combination often found in common video cards). Instead the Mali ARM core is a pure 3D engine that renders graphics into memory and hands the rendered image over to another core that handles the display.
ARM does, however, license display controller SIP cores independently of the Mali 3D accelerator SIP block, e.g. Mali DP500, DP550 and DP650.[2]
ARM also supplies tools to help in authoring OpenGL ES shaders named Mali GPU Shader Development Studio and Mali GPU User Interface Engine.
Display controllers such as the ARM HDLCD display controller are available separately.[3]
Variants
The Mali core grew out of the cores previously produced by Falanx and currently constitute:
Model | Micro- archi- tecture |
Launch date | Shader core count | Fab (nm) | Die size (mm2) | Core clock rate (MHz) | L2 cache size | Fillrate | Bus width (bits) | GFLOPS (per core) |
API (version) | Fused multiply– add |
Usage in SoCs | Usage | |||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
M△/s | (GP/s) | Vulkan | OpenGL ES | OpenVG | OpenCL | Direct3D | |||||||||||||
Mali-55/110 | ? | 2005 | 1 | ? | ? | ? | N/A | 2.8 | 0.1 | ? | ? | N/A | 1.1 | 1.0 | N/A | N/A | No | ? | Graphics |
Mali-200 | Utgard[4] | 2007[5] | 1 | ? | ? | ? | N/A | 5 | 0.2 | ? | ? | 2.0 | 1.1 | ||||||
Mali-300 | ? | 1 | 40 28 |
? | 500 | 8 KiB | 55 | 0.5 | ? | 5 | K1892VM14Ya | ||||||||
Mali-400 MP | 2008 | 1–4 | 40 28 |
? | 200–600 | 256 KiB | 55 | 0.5 | ? | 1.2–5.4 | Allwinner A10, A20, A33, H3, A64 | ||||||||
Mali-450 MP | 2012 | 1–8 | 40 28 |
? | 300–750 | 512 KiB | 142 | 2.6 | ? | 4.5–11.9 | Amlogic S805, S802, S812, S905
Allwinner H5 | ||||||||
Mali-470 MP | 2015 | 1–4 | 40 28 |
? | 250–650 | 8–256 KiB | 71 | 0.65 | ? | ? | ? | ||||||||
Mali-T604[6] | Midgard 1st gen | ? | 1–4 | 32 28 |
? | 533 | 32–256 KiB | 90 | 0.533 | ? | 17 | 3.1 | Full Profile 1.1 | 11 (FL 9_3) |
Yes | Exynos 5250 | Graphics & Compute | ||
Mali-T658[6] | ? | 1–8 | ? | ? | ? | ? | ? | ? | ? | ||||||||||
Mali-T622 | Midgard 2nd gen | ? | 1–2 | 32 28 |
? | 533 | ? | ? | ? | 8.5 | |||||||||
Mali-T624 | Aug 2012 | 1–4 | 32 28 |
? | 533–600 | ? | ? | ? | 17-19.2 | RK3288 | |||||||||
Mali-T628 | Aug 2012 | 1–8 | 32 28 |
? | 533–695 | ? | ? | ? | 17–23.7 | Kirin 930/935 | |||||||||
Mali-T678[7] | Aug 2012 | 1–8 | 28 | ? | ? | ? | ? | ? | ? | ||||||||||
Mali-T720 | Midgard 3rd gen | Oct 2013 | 1–8 | 28 | ? | 400–700 | 32–256 KiB[8] | 650 | 5.2 | ? | 6.8–11.9 | Exynos 7580, MT6735, MT6753 | |||||||
Mali-T760 | Oct 2013 | 1–16 | 28 / 14 | 1.75 mm 2 per shader core at 14 nm[9] | 600–772 | 256–2048 KiB[10] | 1300 | 10.4 | ? | 17–26.2 | 1.0[11] | 3.2[12] | Full Profile 1.2 | 11 (FL 11_1) [13] |
Exynos 7420, Exynos 5433, MT6752, MT6732 | ||||
Mali-T820 | Midgard 4th gen | Q4 2015 | 1–4 | 28 | ? | 600 | 32–256 KiB[10] | 400 | 2.6 | ? | 10.2 | 11 (FL 9_3) |
Amlogic S912 | ||||||
Mali-T830 | 28 | ? | 600–950 | 32–256 KiB[10] | 400 | 2.6 | ? | 20.4–23.8 | Kirin 650/655, Exynos 7870, Exynos 7880 | ||||||||||
Mali-T860 | 1–16 | 28 | ? | 350–700 | 256–2048 KiB[10] | 1300 | 10.4 | ? | 11.9–23.8 | 11 (FL 11_1) |
Helio P10 (MT6755) / PineCone Surge S1 | ||||||||
Mali-T880 | Q2 2016 | 1–16 | 16 | ? | 650–1000 | 256–2048 KiB[10] | 1700 | 13.6 | ? | 22.1–34 | Exynos 8890, Helio P20 (MT6757), Helio P25, Helio X20 (MT6797), Kirin 950 | ||||||||
Mali-G51[14] | Bifrost | Q4 2016 | ? | 16 14 10 |
? | ? | ? | ? | ? | ? | ? | Full Profile 2.0 | 11 (FL 9_3) |
||||||
Mali-G71 | 1–32 | 16 14 10 |
? | 700-1037 | 128–2048 KiB | 1850 | 27.2 | ? | 18.56[15]-28.9[15] | 11 (FL 11_1) |
Kirin 960
Exynos 8895 | ||||||||
Mali-G72 | Q2 2017 | 1–32 | 16 14 10 |
? | 850 | 128–2048 KiB | ? | ? | ? | ? | 12 (FL 11_1) |
||||||||
Model | Micro- archi- tecture |
Launch date | Shader core count | Fab
(nm) |
Die size (mm2) | Core clock rate (MHz) | Max L2 cache size | Fillrate | Bus width (bits) | GFLOPS (per core) |
Vulkan | Open GL/ES |
Open VG |
Open CL |
Direct 3D |
Fused multiply-add | Usage in SoCs | Usage |
Some Malis support cache coherency for the L2 cache with the CPU.[16][17]
Adaptive Scalable Texture Compression (ASTC) supported by Mali-T620, T720/T760, T820/T830/T860/T880 [18] and Mali-G series.
Implementations
The Mali GPU variants can be found in the following systems on chips (SoCs):
Vendor | SoC name | Mali version |
---|---|---|
Allwinner | Allwinner A1X (A10, A10s, A13) | Mali-400 MP[19][20][21] @ 300 MHz |
A20, A23, A33, H2, H3, A64, H64, R8, R16, R40, R18 | Mali-400 MP2[22] @ 350/350/350/600/600/?/?/?/?/?/? MHz | |
H5 | Mali-450 MP4 | |
Amlogic | 8726-M series (8726-M1, 8726-M3, 8726-M6, 8726-MX) | Mali-400 MP/MP2[23] @ 250/400 MHz |
8726-M8 series (M801, M802, S801, S802, S812) | Mali-450 MP6[23] @ 600 MHz | |
8726-M8B series (M805, S805) | Mali-450 MP2[23] @ 500 MHz | |
S905, S905X/D/L | Mali-450 MP3 @ 750 MHz | |
S912 | Mali-T820 MP3 @ 600 MHz | |
T966 | Mali-T830 MP2 @ 650 MHz | |
CSR | Quatro 5300 Series | Mali-400 MP |
InfoTM | iMAP×15 | Mali-400 |
iMAP×820 | Mali-400 MP2 | |
iMAP×912 | Mali-400 MP2 | |
HiSilicon | Kirin 620 | Mali-450 MP4 @ 533 MHz |
Kirin 650/655 | Mali-T830 MP2 @ 900 MHz | |
Kirin 910/910T | Mali-450 MP4 @ 533/700 MHz | |
Kirin 920/925/928 | Mali-T628 MP4 @ 600/600/? MHz | |
Kirin 930/935 | Mali-T628 MP4 @ 600/680 MHz | |
Kirin 950/955 | Mali-T880 MP4 @ 900 MHz | |
Kirin 960 | Mali-G71 MP8 @ 1037 MHz | |
Leadcore | LC1810, LC1811, LC1813, LC1913 | Mali-400[24][25][26][27] |
LC1860, LC1860C, LC1960 | Mali-T628 MP2 @ 600 MHz | |
MediaTek | MT6571, MT6572, MT6572M | Mali-400 MP @ ?/500/400 MHz |
MT6582/MT6582M | Mali-400 MP2 @ 500/416 MHz | |
MT6591, MT6592, MT6592M, MT8127 | Mali-450 MP4 @ 600/700/600/600 MHz[28] | |
MT6732, MT6732M, MT6752, MT6752M | Mali-T760 MP2 @ 500/500/700/700 MHz[29] | |
MT6753 | Mali-T720 MP4 @ 600 (Boost) MHz[30] | |
MT6797, MT6797T | Mali-T880 MP4 @ 700/850 MHz | |
MT8735 | Mali-T720 MP2 @ 450 MHz | |
NetLogic | Au1380, Au1350 | Mali-200[31][32] |
Nufront | NS2816, NS2816M | Mali-400 MP |
NS115, TL7688, TL7689 | Mali-400 MP2 | |
Rockchip | RK2818 | Mali-200 |
RK2926, RK2628, RK3036, RK3229 | Mali-400 MP @ 400/400/500/600 MHz[33] | |
RK3026, RK3126, RK3128 | Mali-400 MP2 @ 500/600/600 MHz | |
RK3066, RK3188, RK3188T | Mali-400 MP4 @ 266/533/~400 MHz[34][35] | |
RK3288 | Mali-T760 MP4 @ 600 MHz | |
RK3328 | Mali-450 MP2 | |
RK3399 | Mali-T860 MP4 @ 600 MHz | |
Samsung | Exynos 3 Quad (3470), Exynos 4 Dual, Quad (4210, 4212 and 4412) | Mali-400 MP4[36] |
Exynos 5 Dual (5250) | Mali-T604 MP4[37] | |
Exynos 5 Hexa (5260) | Mali-T624 MP3 | |
Exynos 5 Octa (5420, 5422, 5430 and 5800) | Mali-T628 MP6 | |
Exynos 7 Octa (5433/7410) | Mali-T760 MP6 | |
Exynos 7 Octa (7420) | Mali-T760 MP8 | |
Exynos 8 Octa (8890) | Mali-T880 MP12 | |
Exynos 9 Octa (8895) | Mali-G71 MP20[38] | |
S5P6450 Vega | Mali-400 MP[39] | |
Sigma Designs | SMP8750 Series | Mali-400 MP4 @ 350 MHz[40] |
Socle-Tech | Leopard-6 | Mali-200[41] |
Spreadtrum | SC68xx, SC57xx, SC77xx, SC8xxx, SC983x | Mali-400 MP Series[42] |
SC9860, SC9860GV | Mali-T880 MP4 | |
ST-Ericsson | NovaThor U9500, U8500, U5500 | Mali-400 MP[43] |
STMicroelectronics | SPEAr1340 | Mali-200[44] |
STi7108, STiH416 | Mali-400 MP[45][46] | |
Telechips | TCC8803, TCC8902, TCC8900, TCC9201 | Mali-200[23][47] |
WonderMedia | WM8750 | Mali-200 |
WM8850, WM8950 | Mali-400 MP[48] | |
WM8880, WM8980 | Mali-400 MP2 | |
WM8860 | Mali-450 |
Mali Video
Mali Video is the name given to ARM Holdings' dedicated video decoding and video encoding ASIC. There are multiple versions implementing a number of video codecs, such as HEVC, VP9, H.264 and VP8. As with all ARM products, the Mali Video Processor is a semiconductor intellectual property core licensed to third parties for inclusion in their chips. Real time encode-decode capability is central to videotelephony. An interface to ARM's TrustZone technology is also built-in to enable Digital Rights Management of copyrighted material.
V500
The first version of a Mali Video processor was the V500, released in 2013 with the Mali-T622 GPU.[49] The V500 is a multicore design, sporting 1–8 cores, with support for H.264 and a protected video path using ARM TrustZone. The 8 core version is sufficient for 4K video decode at 120 frames per second (fps). The V500 can encode VP8 and H.264, and decode H.264, H.263, MPEG4, MPEG2, VC-1/WMV, Real, VP8.
V550
Released with the Mali-T800 GPU, ARM V550 video processors added both encode and decode HEVC support, 10-bit color depth, and technologies to further reduced power consumption.[50] The V550 also included technology improvements to better handle latency and save bandwidth.[51] Again built around the idea of a scalable number of cores (1–8) the V550 could support between 1080p60 (1 core) to 4K120 (8 cores). The V550 supported HEVC Main, H.264, VP8, JPEG encode, and HEVC Main 10, HEVC Main, H.264, H.263, MPEG4, MPEG2, VC-1/WMV, Real, VP8, JPEG decode.
V61
The Mali V61 video processor (formerly named Egil) was released with the Mali Bifrost GPU in 2016.[52][53] V61 has been designed to improve video encoding, in particular HEVC and VP9, and to allow for encoding either a single or multiple streams simultaneously.[54] The design continues the 1–8 variable core number design, with a single core supporting 1080p60 while 8 cores can drive 4Kp120.
The Lima FOSS driver
On January 21, 2012, Phoronix reported that Luc Verhaegen is driving a reverse-engineering attempt aimed at the Mali series of GPUs, specifically the Mali 200 and Mali 400 versions. The project will be known as Lima and support OpenGL ES 2.0.[55] The reverse-engineering project was presented at FOSDEM, February 4, 2012,[56][57] followed by the opening of a website demonstrating some renders. On February 2, 2013, Verhaegen demonstrated Quake III Arena in timedemo mode, running on top of the Lima driver.[58]
See also
- Adreno – GPU developed by Qualcomm (formerly AMD, then Freescale)
- PowerVR – by Imagination Technologies
- Vivante – available as SIP block to third parties
- Tegra – family of SoCs for mobile computers, the graphics core could be available as SIP block to third parties
- VideoCore – family of SOCs, by Broadcom, for mobile computers, the graphics core could be available as SIP block to third parties.
- Atom family of SoCs – with Intel graphics core, not licensed to third parties
- AMD mobile APUs – with AMD graphics core, not licensed to third parties
References
- ↑ "ARM Strengthens Its 3D Graphics IP Portfolio Through Falanx Acquisition".
- ↑ "Initial support for ARM Mali Display Controller". Linux kernel mailing list. 2016-04-01.
- ↑ https://lwn.net/Articles/667575/
- ↑ Mali Graphics Webpage; Arm Holdings.
- ↑ http://www.anandtech.com/show/8234/arms-mali-midgard-architecture-explored/2
- 1 2 http://www.khronos.org/assets/uploads/developers/library/2012-pan-pacific-road-show/OpenGL-and-OpenGL-ES-Taiwan_Feb-2012.pdf Khronos Group OpenGL and OpenGL ES Taiwan Feb 2012
- ↑ AnandTech | ARM Announces 8-core 2nd Gen Mali-T600 GPUs
- ↑ depending on number of GPU shader core groups
- ↑ "The Samsung Exynos 7420 Deep Dive - Inside A Modern 14nm SoC". AnandTech. Retrieved 2015-06-15.
- 1 2 3 4 5 depending on number of shader core groups
- ↑ "Vulkan - Mali Developer Center". ARM. Retrieved 2016-06-16.
- ↑ Supported as of June 2016 with r12p0 userspace driver
- ↑ "ARM's Mali Midgard Architecture Explored". AnandTech. Retrieved 2014-07-07.
- ↑ Lynch, Doug (31 October 2016). "ARM announces their second Bifrost GPU – the Mali-G51". XDA Developers. Retrieved 31 October 2016.
- 1 2 "GPU GFLOPS". kyokojap.myweb.hinet.net. Retrieved 2017-08-07.
- ↑ http://www.heterogeneouscompute.org/hipeac2011Presentations/OpenCL-Midgard.pdf Midgard OpenCL Cache coherency
- ↑ http://www.chipdesignmag.com/pallab/2011/06/30/arm-mali-gpu-unifying-graphics-across-platforms/ Heterogeneous Computing
- ↑ "Adaptive Scalable Texture Compression (ASTC) technology developed by ARM and AMD".
- ↑ "A10". Allwinner Technology. Retrieved 2012-12-13.
- ↑ "A10s". Allwinner Technology. Retrieved 2012-12-13.
- ↑ "A13". Allwinner Technology. Retrieved 2012-12-13.
- ↑ "AllWinner Publishes A31 and A20 Processors Details". CNXSoft. December 9, 2012. Retrieved 2012-12-09.
- 1 2 3 4 Limadriver.org: Hardware
- ↑ "LC1810". Leadcore. Retrieved 2014-08-16.
- ↑ "LC1811". Leadcore. Retrieved 2014-08-16.
- ↑ "LC1813". Leadcore. Retrieved 2014-08-16.
- ↑ "LC1913". Leadcore. Retrieved 2014-08-16.
- ↑ Mediatek MT8127
- ↑ http://www.notebookcheck.net/ARM-Mali-T760-MP2.146753.0.html
- ↑ http://www.notebookcheck.net/ARM-Mali-T720-MP4.150999.0.html
- ↑ NetLogic Au1300
- ↑ RMI Au1300 Press release
- ↑ Filla Sapphire 7 Product Specification
- ↑ Rockchip Licenses a Wide Range of ARM IP for Turnkey Solution Targeting Mass Market, Cost-Effective Android Tablets
- ↑ http://sg.finance.yahoo.com/news/28nm-quad-core-era-rk3188-144500035.html
- ↑ (in English) ARM Powered Smartphone Sets New Graphics Benchmark on ARM blog
- ↑ Samsung Confirms Mali is in the Exynos 5250 Processor - ARM Community
- ↑ Smith, Ryan. "Samsung Announces Exynos 8895 SoC: 10nm, Mali G71MP20, & LPDDR4x". Retrieved 2017-03-12.
- ↑ Hardkernel ODROID-E7 development board
- ↑ Sigma Designs announces HEVC capable SMP8750 family
- ↑ Socle Leopard-6 SoC
- ↑ Spreadtrum SC8819
- ↑ ST-Ericsson NovaThor product page
- ↑ STMicro SPEAr1340
- ↑ STMicro STi7108 Press release
- ↑ STMicro STiH416 Press release
- ↑ 2010, ARM Limited: TCC8900 development board
- ↑ WonderMedia Prizm WM8950 Press release
- ↑ Lal Shimpi, Anand (2 June 2013). "ARM MaliT622 V500 Video Block Complement Cortex A12". Anandtech.com. Retrieved 16 June 2016.
- ↑ Smith, Ryan (27 October 2014). "ARM Announces Mali V550 Video Processor and Mali P550 Display Processor". Anandtech.com. Retrieved 16 June 2016.
- ↑ Sims, Gary (27 October 2014). "Mali-T860 GPU headlines new range of integrated media designs from ARM". Android Authority. Retrieved 24 June 2016.
- ↑ Smith, Ryan (16 June 2016). "ARM Announces Mali Egil Video Processor". Anandtech.com. Retrieved 17 June 2016.
- ↑ Smith, Ryan (31 October 2016). "ARM Announces Mali-G51 Mainstream GPU, Mali-V-61 Video Processing Block". Anandtech. Retrieved 1 November 2016.
- ↑ Walrath, Josh (16 June 2016). "ARM Introduces Egil Video Processor: 4K 120 Hz the Top!". TechReport.com. Retrieved 28 June 2016.
- ↑ Phoronix, Jan 27 2012: Announcing The Lima Open-Source GPU Driver
- ↑ Phoronix, Jan 21 2012: An Open-Source, Reverse-Engineered Mali GPU Driver
- ↑ FOSDEM schedule, Jan 21 2012: Liberating ARM's Mali GPU
- ↑ Quake 3 Arena timedemo on top of the lima driver! Archived 2013-02-09 at the Wayback Machine.
External links
- Graphics Processing from ARM website
- Mali Developer Center a developer focused site run by ARM
- V500
- V550
- Lima driver