Slashdot Mirror


Application Optimization with Compilers for LOP

An anonymous reader writes "Interested in tuning your C/C++ applications for Linux on POWER? This article compares the optimization options for both Linux on POWER C/C++ compilers: GCC and IBM XL C/C++. This paper also reviews tactics, such as Interprocedural Analysis, Profile Directed Feedback, and High Order Transformations, which are used by one or both of the compilers to extract higher performance from the Power architecture."

20 comments

  1. Re:What? by bhima · · Score: 0

    POWER is IBM's CPU archtecture. Hope that helps

    --
    Nothing in the world is more dangerous than sincere ignorance and conscientious stupidity.
  2. what the hell by giel · · Score: 1, Funny
    I cannot be the only one reading this thinking "What the hell is Linux on POWER?"

    For sure you're not the only one. Almost everybody nowadays starts posting before even reading an article and or related links. Very 'Insightful'.

    --
    giel.y contains 2 shift/reduce conflicts
    1. Re:what the hell by Sparr0 · · Score: 0

      Actually I read the first 2-3 pages of the article. It doesnt even mention PowerPC until the section on architecture-specific optimizations, and everything above that is 'duh, i already know -O2 does' material

  3. Power PC rocks !! by Gopal.V · · Score: 3, Informative

    PowerPC CPU is a cool design - not only does it deliver great performance at lower clock speeds, but the entire design is great for compiler devs .

    For one, they have true 3 register operations. Which means that every binary operation has a src1, src2, and dst. Also all opcodes are 32 bit - no exceptions (jmp offsets are easy to check for).

    Because of 32 registers (not a measly 8), most of the code can run very fast off them , especially those tight loops. Also the cache touch instructions which do not segfault for invalid addresses helps you fetch arrays before their indexes are validated.

    All in all, I prefer PPC to x86 on any day. Now if only they'd have a common FPU opcode set.

    1. Re:Power PC rocks !! by keesh · · Score: 1, Informative

      Uh, you just described SPARCv9, not Power. Power opcodes come in multiple sizes.

    2. Re:Power PC rocks !! by Anonymous Coward · · Score: 0

      Uh, no they don't. PowerPC uses 32-bit instruction words exclusively.

    3. Re:Power PC rocks !! by Anonymous Coward · · Score: 0

      ppc != power

  4. Re:What? by den_erpel · · Score: 1

    Perhaps you should have a look at Wikipedia. It is the base for a lot of processor architectures, including PowerPC. A lot of embedded architectures use a PowerPC instead of an Intel or other uC.

    Considering the spread, I for one am interested very interested in the article and esp. in order to see what kind of improvements gcc can still obtain. This gives me a very strong incentive to keep a close eye on the development and re-create my crosscompilation environment with major and mid gcc releases.

    --
    Genius doesn't work on an assembly line basis. You can't simply say, "Today I will be brilliant."
  5. Nothing to see here... by Anonymous Coward · · Score: 2, Funny
    Look, I'm all for optimizations and compiler technology, but the example is *lame*. First it's copying gigs of memory from one array to the other in a _non-sequential_ (!) manner. I think it is safe to say that by reordering the loops you would get all the benefits of the IBM compiler. Why not use the memcpy() function then??

    I think the lesson here is not how a compiler can save you time but how you can save time by not reading the article.

  6. Re:What? by Anonymous Coward · · Score: 0

    whoever modded this insightful is a dumbass. what is so insightful about a comment where the person didn't read the fucking article and does not understand what it is about?

  7. Re:What? by __aaclcg7560 · · Score: 0

    It's a relevant question. After scanning over the article, I would've never figured out that POWER stands for PowerPC. Duh! The problem is the summary and the article is not clear on this point. Not everyone is well versed on the CPU designs outside of Intel and AMD.

  8. Not quite the operator I'd use... by Millennium · · Score: 1

    It's more accurate to say that PowerPC POWER, rather than that PowerPC != POWER..

    There are several lines of chips based off of the POWER architecture. PowerPC is one of them, and as others have mentioned it has fixed-size 32-bit instructions. It's a subset of the POWER architecture which has this particular property, but that property might not apply to POWER itself.

  9. Re:What? by Anonymous Coward · · Score: 0

    it may be relevant, it is not insightful.

  10. Re:What? by Anonymous Coward · · Score: 0

    POWER does not stand for PowerPC.

  11. Re:What? by 0racle · · Score: 1

    Could that be because Power doesn't stand for PowerPC. PPC is just one chip type in the Power family. Its an article summary, not glossary. If you don't know what something is, look it up yourself.

    --
    "I use a Mac because I'm just better than you are."
  12. Not really... by Anonymous Coward · · Score: 0

    PowerPC CPU is a cool design
    The problem for servers is:
    POWER chips usually consume *much* more power than other chips.
    You will be locked into IBM's proprietary hardware - not a great place to be.

  13. Re:What? by Anonymous Coward · · Score: 0

    Ah, but relevant would have been "The summary does not mention what POWER is." Insightful is the part "I cannot be the only one reading this thinking ..."

  14. Re:What? by Anonymous Coward · · Score: 0

    There, you see? All of this confusion from so many people demonstrates that the thing was inadequately explained.