Results 1 to 5 of 5

Thread: Optimizing Marvell Graphics With iwMMXt

  1. #1
    Join Date
    Jan 2007
    Posts
    14,631

    Default Optimizing Marvell Graphics With iwMMXt

    Phoronix: Optimizing Marvell Graphics With iwMMXt

    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...

    http://www.phoronix.com/vr.php?view=MTEzNDQ

  2. #2
    Join Date
    Nov 2008
    Location
    Madison, WI, USA
    Posts
    865

    Default

    I hadn't realized that there were ARM CPUs out there with x86-derived SIMD extensions... cool. I don't own any Marvell stuff, but anything we can do to improve ARM performance is good with me. I've got a development phone running Android 2.3 and a tablet running Android 4.0.3 (w/ A8 CPU and Mali 400 GPU), and I'm perfectly willing to accept any and all performance improvements that I can get on my admittedly bargain-bin gifts/purchases.

  3. #3
    Join Date
    Feb 2008
    Location
    Linuxland
    Posts
    5,067

    Default

    Nice work there Matt.

    Though following the ML from the initial MMX work, seems that pixman's MMX parts no longer run on actual MMX cpus, ie Pentium MMX and more importantly the Xcore86 variants (which are still sold and produced, they are used in passive small PCs, thin clients etc).

  4. #4
    Join Date
    Jan 2008
    Posts
    299

    Default

    Quote Originally Posted by curaga View Post
    Nice work there Matt.

    Though following the ML from the initial MMX work, seems that pixman's MMX parts no longer run on actual MMX cpus, ie Pentium MMX and more importantly the Xcore86 variants (which are still sold and produced, they are used in passive small PCs, thin clients etc).
    Thanks!

    Here's the story with original MMX CPUs:

    A few years ago, Søren used a few MMX Extension instructions but removed them after running into some trouble. The CPU detection was modified to only use the MMX paths when MMX Extensions were available -- and when MMX Extension instructions were removed I don't think the CPU detection code was reverted back.

    So, actually original MMX CPUs haven't been using this code in quite some time. I sort of wanted to keep support for them around, but it would require either a compile-time flag (meaning it'd never be tested) or a huge duplication of code (meaning it'd never be tested). Loongson's vector instructions and ARM's iwMMXt both have important improvements over the original MMX which are also available in the MMX Extensions, so it makes sense to use them.

    To be clear, the MMX code works on anything with MMX+3DNow (e.g., AMD K6-2 and newer) or MMX+SSE (e.g., Pentium III and newer)

    These two changes added back the use of some important MMX Extension instructions, and from the commit messages you can see why we like using them:

    http://cgit.freedesktop.org/pixman/c...cf4804c23792e9
    http://cgit.freedesktop.org/pixman/c...b2ba7258e62c9e

    If someone was so inclined, they could modify the code to run on original MMX CPUs, but I wouldn't expect the code to go upstream unless you're doing it for a reason other than to support the 233 MHz Pentium MMX system in your closet.

  5. #5
    Join Date
    Feb 2008
    Location
    Linuxland
    Posts
    5,067

    Default

    As mentioned, 1+ Ghz Xcore86 cpus are still produced and sold. A bit better than the P5 MMX in a closet

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •