1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Optimizing Marvell Graphics With iwMMXt

Compiler

Published on 06 July 2012 10:02 AM EDT
Written by Michael Larabel in Compiler
4 Comments

Thanks in large part to iwMMXt fixes/improvements found in GCC 4.8, the ARM Marvell graphics performance will be much-improved, which will benefit the OLPC XO-1.75.

Matt Turner, the student developer who previously worked on a 3Dlabs KMS driver, began working on optimizing the (Marvell) ARM graphics performance last summer to benefit the One Laptop Per Child XO-1.75 notebook.

As outlined today on Matt's blog, "I started working with Chris and Jon Nettleton on improving the graphics performance of the ARM-based XO 1.75 laptop. The graphics drivers were in a state of flux, and in a number of cases the Sugar interface felt noticeably slower than on the VIA-powered XO 1.5. We wanted to know why it was slower and how to quantitatively measure graphics performance of real-world applications."

What Matt Turner ended up focusing upon for the XO-1.75 graphics optimizations were allowing Pixman's MMX-optimized compositing functions to work on the OLPC ARM hardware. Marvell's Sheeva ARM SoC as used in the XO-1.75 is based upon Intel's XScale ARM architecture that Marvell acquired.

Thanks to the Intel lineage, the ARM SoC features the iwMMXt SIMD instruction set, which is effectively compatible with Intel x86 MMX. In one hit, x86/MMX and ARM/iwMMXt can be targeted. With Pixman already having the MMX optimizations, Matt focused on making them work for the OLPC ARM target with iwMMXt.

Unfortunately, the GCC support for iwMMXt had regressed with it not being tested since the Intel XScale days. As a result, Turner had to fix the GCC support, which he patched, Marvell also provided GCC improvements for iwMMXt scheduling and support. Therefore with GCC 4.8 will be improved iwMMXt code generation support. Thanks to this, the graphics performance goes up to benefit the OLPC XO-1.75. Some positive benchmark results are shared in Matt's aforementioned blog post.

There's also an unfortunate problem in this situation, illustrating another problem with American universities. As said on Matt's blog about his GCC patch to fix iwMMXt support, "I submitted a small patch to fix the problem, but my school (NC State) took eight months to acknowledge that they don't own my work, and by that time Marvell had contributed a five-patch series to significantly improve iwMMXt scheduling and support." So it took over a half-year for North Carolina State University to let Matt submit a patch to the GPLv3-licensed GNU Compiler Collection. (Had this not happened, his patch could have already landed with GCC 4.7.)

With having around an OLPC XO-1.75, it looks like it's time to run some new benchmarks.

Latest Linux Hardware Reviews
  1. Overclocking The AMD AM1 Athlon & Sempron APUs
  2. AMD Athlon 5350 / 5150 & Sempron 3850 / 2650
  3. Upgraded Kernel & Mesa Yield A Big Boost For Athlon R3 Graphics
  4. AMD Athlon 5350 APU On Linux
Latest Linux Articles
  1. A Quick Look At GCC 4.9 vs. LLVM Clang 3.5
  2. Are AMD Athlon/Sempron APUs Fast Enough For Steam On Linux?
  3. AMD Athlon's R3 Graphics: RadeonSI Gallium3D vs. Catalyst
  4. GCC 4.9 Compiler Optimization Benchmarks For Faster Binaries
Latest Linux News
  1. Fedora Workstation Is Making Me Quite Excited
  2. Maynard: A Lightweight Wayland Desktop
  3. Chromium Browser Going Through Growing Pains In Ubuntu 14.04
  4. KDE 4.13 Is Being Released Today With New Features
  5. Trying Out Radeon R9 290 Graphics On Open-Source
  6. Intel Broadwell GT3 Graphics Have Dual BSD Rings
  7. Early Linux 3.15 Benchmarks Of Intel Core i7 + Radeon
  8. Red Hat Releases Its RHEL 7 Release Candidate
  9. New Features Coming To Xubuntu 14.04 LTS
  10. NVIDIA Officially Releases CUDA 6
  11. Google Releases An AutoFDO Converter For Perf In LLVM
  12. Fedora 21 To Evaluate Remote Journal Logging, 64-bit ARM Emulation
Latest Forum Discussions
  1. The GNOME Foundation Is Running Short On Money
  2. Change installation destination from home directory
  3. After Jack Keane, RuseSoft will briing Ankh 3 to Linux through Desura
  4. Linux Kernel Developers Fed Up With Ridiculous Bugs In Systemd
  5. Bye bye BSD, Hello Linux: A Sys Admin's Story
  6. New tool for undervolt/overclock AMD K8L and K10 processors
  7. How to enable opengl 3.3 on r9 270?
  8. R290x sound problems