The Mali-400

Now that we've settled the issue of what type of GPU it is, let's talk about the physical makeup of the Mali-400.  The Mali-400 isn't a unified shader architecture, it has discrete execution hardware for vertex and fragment (pixel) processing.  ARM calls the Mali-400 a multicore GPU with configurations available with 1 - 4 cores.  When ARM refers to a core however it's talking about a fragment (pixel shader) processor, not an entire GPU core.  This is somewhat similar to NVIDIA's approach with Tegra 2, although NVIDIA counts each vertex and fragment processor as an individual core. 

In its simplest configuration the Mali-400 features a single combined geometry front end and vertex processor and a single fragment processor.  The 400 is also available in 2 and 4 core versions, both of which still have only a single vertex processor.  The two core version has two fragment processors and the four core version has four fragment processors.  Note that ARM decided to scale fragment shading performance with core count while keeping vertex performance static.  This is likely the best decision given current workloads, but a risky one.  NVIDIA on the other hand standardized on a 1:1 ratio between fragment and vertex processors compared to ARM's 4:1 on a 4-core Mali-400.  The 4-core Mali-400 MP4 is what Samsung uses in the Exynos 4210. 

ARM, like Qualcomm, isn't particularly interested in having the details of its GPUs available publicly.  Unfortunately this means that we know very little about the makeup of each of these vertex and fragment processors.  I suspect that both companies will eventually learn to share (just as AMD and NVIDIA did) but as this industry is still in its infancy, it will take some time. 

Earlier documentation on Mali revealed that the GPU is a VLIW architecture, meaning each processor is actually a collection of multiple parallel execution units capable of working on vector data.  There's no public documentation indicating how wide each processor is unfortunately, but we can make some educated guesses. 

We know from history that AMD felt a 5-wide VLIW architecture made sense for DX9 class games, later moving down to a 4-wide architecture for DX11 games.  AMD didn't have the die constraints that ARM and other SoC GPU suppliers do so a 5-wide unit is likely out of the question, especially considering that Imagination settled on a VLIW4 architecture.  Furthermore pixels have four color elements (RGBA), making a VLIW4 an ideal choice. 

Based on this as well as some internal information we can assume that a single Mali fragment shader is a 4-wide VLIW processor.  The vertex shader is a big unknown as well, but knowing that vertex processing happens on two coordinate elements (U & V) Mali's vertex shader is likely a 2-wide unit. 

Thus far every architecture we've looked at has been able to process one FP16 MAD (multiply+add) per execution unit per clock.  If we make another assumption about the Mali-400 and say it can do the same, we get the following table:

Mobile SoC GPU Comparison

PowerVR SGX 535

PowerVR SGX 540

PowerVR SGX 543

PowerVR SGX 543MP2

Mali-400 MP4

GeForce ULP

Kal-El GeForce

SIMD Name

USSE

USSE

USSE2

USSE2

Core

Core

Core

# of SIMDs

2

4

4

8

4 + 1

8

12

MADs per SIMD

2

2

4

4

4 / 2

1

? 

Total MADs

4

8

16

32

18

8

? 

GFLOPS @ 200MHz

1.6 GFLOPS

3.2 GFLOPS

6.4 GFLOPS

12.8 GFLOPS

7.2 GFLOPS

3.2 GFLOPS

? 

GFLOPS @ 300MHz

2.4 GFLOPS

4.8 GFLOPS

9.6 GFLOPS

19.2 GFLOPS

10.8 GFLOPS

4.8 GFLOPS

? 

Based on this estimated data alone, it would appear that a four-core Mali-400 has the shader compute power of a PowerVR SGX 543.  In other words, half the compute horsepower of the iPad 2's GPU or over twice the compute of any smartphone GPU today.  The Mali-400 is targeted at 275MHz operation, so its figures are likely even higher than the competition.  Although MADs are quite common in shader execution, they aren't the end all be all - we need to look at application performance to really see how it stacks up. 

Hi Brian.. first off thanks for the great review..its quite honestly the best I've read on the SGS2..

As an SGS2 user i need to just testify to my experience of the AOS bug..This bug or its effects aren't actually experienced by me while the phone is actually in use, but actually results in a dramatic use of battery when in suspend.. it is intermittent so it won't occur all the time but over the last month I've been able to identify it using battery monitor pro.what i find is that in the morning when unplugged i can put my edge data on and then leave the phone in standby for up to two hours and see no drain... if i then proceed to use the phone for about 20min and note the battery percentage , i then lock the phone and leave it in standby again with edge data enabled and push email... after closing all tasks but the battery percentage will drop by up to 10% in those two hours while battery monitor pro reports an estimate usage of 100+ mah ..compared to the same running conditions it was in when just unplugged and consumed almost no power.  this isn't always the case though sometimes the phone will only drop 2% or less per hour with the battery monitor pro reporting usage of 25~35 mah ... As you can see this bug actually affects standby time more than nonstop usage and that is probably why the benchmarks havent been affected.. also im not sure if its normal but when the phone is experiencing the high usage and i look at the process cpu usage the events and suspend process are consuming around 15~20% cpu... this checked immediately after unlocking the phone using watchdog task manager pro.while i understand all the measurements are estimates .. i really feel the effects of this as with the same usage i can't be certain if ill get the 14hours battery life i need or 10.. what is the normal power consumption for an android phone in suspend as I've noticed my brothers HTC desire consistently consumes 10~15mah in standby with a similar set up..

again thanks for the great review..my international SGS2 is running stock with no root , XXKF3 .  Reply

I have been using SGS2 for two months now and this is my 3rd Android.  In the past, I always flashed closest to stock ROM, now after 2 months, I think google should consider touchWiz kindof UI as default.  It is really minimalistic with just few tiny bit feature that makes it way better than stock - folders and page scrolling where I can put important apps in page 1, system apps in page 2 and so on. 

One consistent touchWiz feature to swipe contacts left for message and right for call is a must have. 

I must be having over sensitive eye that comfortable brightness level I use during day (indoor) is zero and for evening and night, I am using app called "Screen Filter" to make it dimmer. ( I know this is only me - for my laptop I had to hack drivers to make it dimmer than allowed normally). 

When idle, processor goes back to 200 MHz and normally with wifi off, cellular net off, SGS2 lives through the night depleting only 1% of the battery.  When I only use it for phone and sms, I get two days.  Most of the time when I have access to desktop, I turn off wifi and push mail.  My usual battery indicator runs as follows - fully charged before going to sleep - 99% when I wake up - I turn wifi and push mail on and by the time I move out to office it is 97% - wifi off in office but sometimes on when I move out of my desk to run SIP client and get my desk extension routed to phone and by lunch time it is 90% - push mail on and cellular net on during lunch time 86% - when I reach home it is from 80 to 75% - that is when my phone gets highest load of games, browsing, wifi, pushmail until I plug for charing around 11 pm and before I plug in it is usally 30%.  For comparison, the lowly Nokia 1280 I am using for backup ran for 15 days in single charge and there was still 1/5 bar left in it. 

"light weight seems to imply a certain level of cheapness" - people will soon start to understand weight has no correlation with quality and when devices grow bigger and bigger, they will appreciate lighter weight design. 

As for me, this is my first Samsung and I am impressed!!  Unfortunagely SGS2 has short life it seems - I am so impressed with this light weight, thinness, SAMOLED+, touchWiz that I am getting SG-Note at whatever cost when it comes out :)Reply

hey willstay.. wow !  please help me , how are you getting such astonishing battery life ?  what Rom are you on ?  is your phone used at all during the day ?  i simply can not get that kinda standby consumption between my few use periods during the day.. i love my phone and right now its just the battery life that's frustrating me.. why are the reports so varied .. any info you have would be welcome :)Reply

I'm also getting a full day of usage like the user above.  I ran stock rom forever until i ventured over to the some of the newer custom roms and i'm getting slightly less battery life with the newest sensation 1.6 rom (2.3.4) compared to stock and cognition 1.07.Reply

I am using default ROM but flashed kernel for rooting.  I guess it must be rouse app.  I've found Location And Security -> Use Wireless Networks eats up around 7% of battery through night (which otherwise is only 1%).  Sometimes service called MediaService (after I've played songs through Btooth) eats up around 25% through sleep hours.  Once I used very nice network bandwidth monitoring app to find individual data usage, it was sipping 25% during sleep hours (I install this app only when I need it).  Pushmail on low signal cellular network eats battery like hell - my phone gets warm at the back.  Interestingly, always-on low light digital clock of app NoLED eats only 20% through night.  For most of the bug related drainage, flushing RAM helps. 

If I were you, I would temporarily uninstall few apps at a time to find the culprit.  You may be able to short list possible apps through battery usage tool of the phone too. Reply