As mentioned previously, Luc Verhaegen was to give a talk about the status of Lima driver (reverse-engineered Mali-200/400 GPU driver), as well as other GPU open source implementation, at FOSDEM 2013. This is now done, and part of the talk included a demo of Quake 3 Arena (q3a timedemo) running on tablet featuring AllWinner A10 SoC (Cortex A8 @ 1Ghz, Mali-400MP1 GPU @ 320 Mhz, and DDR3 memory @ 360MHz), and a 1024×600 LCD. The fact it works is already a great achievement in itself, but this demo runs at 47.2fps with Lima driver (limare), whereas it can be rendered at 46.2fps using the binary driver. In his blog, Luc also explains that apart from being 2% faster, it also uses 3% less cpu than the binary driver! Take that binary blobs!
There’s still more work to do however, as this Quake 3 Arena port is not playable yet for 2 reasons:
- There’s no input support via the touchscreen driver yet.
- Luc only included the shaders needed to run the timedemo, but the full game requires more shaders.
He goes on to explain that Lima is not fully open source just yet, as they are still using the binary shader compiler, but he will push Q3A demo source code soon. If you want to learn more of the steps he and others went through to reverse-engineer Mali-400 driver, and optimize it for Q3A timedemo, read “Quake 3 Arena timedemo on top of the lima driver!“
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
7 Replies to “Quake 3 Arena Demo Using Lima Driver is (Slightly) Faster than Mali-400 Binary Driver”
‘Take that binary blobs!” – LOL
So there should be proper GPU support for the RK3066/3188 soon? But not for the A31 (& likely A31-bearing cubieboard)? :(:(:(
BTW – given the partial implementation of the benchmarked driver, can we be sure the comparisons are completely valid?
AllWinner A10 has a Mali-400MP1 with one core (Pixel Processor), and Rockchip RK3066 has a Mali-400MP4 with 4 cores, so I’m not sure the multi-core implementation is ready.
I can find some reference about an open source PowerVR SGX driver, but I don’t know the status. They talked about different open source implementations for Embedded GPU at FOSDEM 2013, but I don’t know the details yet. Waiting for the video, and Luc’s summary.
About the comparison being valid: According to Luc’s blog post, the rest of the GPU implementation is not difficult. We’ll have to see when the code is completed.
A31 is a powervr, so unlikely for now.
Although, they do have that planned (far far in the future i think!)
Time to hop onto #arm-netbook… 😀
That is really great news.
I have some question regarding that.
Before few days I also make some testing for lima and the conclusion was.
it works batter where lima render directly on FB and mali render on buffered mode.
if lima also render on buffered mode the it’s too slow.
we all know disadvantage of rendering directly on fb it may ok for some application but not for all.
what is everybody feedback on above points ?
Now lima implementation is 6% faster – http://libv.livejournal.com/24735.html