Pixman Continues With ARM Performance Improvements
Phoronix: Pixman Continues With ARM Performance Improvements
The October release of Pixman 0.20 brought performance improvements, particularly when using this pixel manipulation library for X and Cairo under ARM platforms. A month later there were more ARM optimizations in the first development snapshot for Pixman 0.22. The second development snapshot for Pixman 0.22 has arrived this morning, and guess what? It brings more ARM performance improvements...
"viciously focus on ARM performance improvements, particularly for the ARM NEON."
that's not really surprising, if you happen to realise that the old Linux PPC never really got any Altivec 128bit SIMD optimisations and suffered a lot of speed degradation for that mistake when compared against Apple that did get lots of Altivec SIMD code in all parts of the that OS etc.
it seems the commercial ARM dev's have learned from that mistake and are making efforts to bench and optimise for the NEON 128but SIMD as and when they can and that's a good thing.
it's odd though , (there was talk back in 2007 that they would but never did), i dont know why someone doesn't port yasm to arm cortex as i understand that would provide a lot more flexibility and far better macro handling ability especially over ARM gas.
after all the Linux ARM dev's and app's do have to compete with apple again, and soon windows on ARM Cortex, so it makes sense every ARM dev benches and profiles their new code patches on a regular cycle and tests and re-factors for speed, and save every clock cycle they can today to get a head start
Single instruction, multiple data
One of ways we used to get Qt 4.7 faster than its predecessor is using the processors more effectively. Modern processors have ways to execute an instruction on multiple data at a time. This is called single instruction, multiple data: SIMD. In particular, recent x86 processors have SSE extensions, while ARM Cortex have Neon.