Slashdot Mirror


IBM Releases Compiler for Power4 and G5

davids-world.com writes "IBM offers its optimized XLC compiler not just for Intel CPUs, but also for its own G5 processor (article in German at Heise). Unlike gcc, it is optimized for the G5 and achieves a major boost in speed, as first results show. I guess we will have to compare the new benchmark data (once available) with the data we get with the optimized Intel compiler for Xeon. The compiler is available for download now."

40 of 471 comments (clear)

  1. All right! by Prince_Ali · · Score: 4, Funny

    So will this new compiler speed up the process of porting Duke Nukem Forever to the Mac?

    1. Re:All right! by Lxy · · Score: 4, Funny

      Yes, it compiles vaporware in half the time.

      --

      There is no reasonable defense against an idiot with an agenda
      :wq
  2. Here we go again: by Anonymous Coward · · Score: 5, Insightful

    Lest anyone forget, Apple beat Intel in real world benchmarks... so the PC fanboys cried that SPEC benchmarks are the real measurement to gague speed... (probably because the comparisons were much closer when conducted this way). When SPEC benchmarks were displayed, these same fanboys cried that Intel's compiler wasn't used (instead the same compiler between platforms). Apple replied that its fairer to normalize the compiler between platforms and that while Intel could have achieved higher results when their compiler was used, Apple could do the same. So, here is that compiler. When/if the G5 outperforms Intel's best, what will the fanboys rally cry be next?

    1. Re:Here we go again: by Tumbleweed · · Score: 4, Informative

      > It's 64bit, supports more memory physically

      The 1.8 and dual 2.0 G5 machines support up to 8Gig of RAM when using 1Gig modules. How much RAM does a dual Opteron machine support?

      The G5 could also run Linux, and via some emulators, Windows software as well. I think the G5s run plenty of software.

    2. Re:Here we go again: by stratjakt · · Score: 5, Insightful

      When/if the G5 outperforms Intel's best, what will the fanboys rally cry be next?

      I nominate "who gives a shit?"

      Anyone who buys a PC because of lame ass benchmarks has no use for said PC, other than to yammer endlessly. If you work with macs, get a mac, if you work with PCs, get a PC, they're two completely different worlds.

      I'm sick of X is 30% better at [specific instruction] than Y arguments. It's like "xbox is 33% faster than ps2" or "mac is 21% faster than dell!". Who gives a flying fuck anymore? Xbox has the worlds shittiest lineup of games, and Macs dont run a *lot* of software essential to people.

      They're just devices, a means to an end. Quit telling me how your boot polisher is better than my doorstop. Its irrelevant.

      --
      I don't need no instructions to know how to rock!!!!
    3. Re:Here we go again: by RalphBNumbers · · Score: 4, Informative

      Also, it should be noted that Macs traditionally support more memory than they claim. Apple only announces the ammount you can put in with commonly available DIMM sizes, in this case 1GB.

      However, the G5's documentation shows the memory interface can actually handle 16GB not just 8, so if you can get 2GB DIMMs, you will probably be able to use them.

      --
      "The worst tyrannies were the ones where a governance required its own logic on every embedded node." - Vernor Vinge
    4. Re:Here we go again: by Frymaster · · Score: 4, Funny
      Simple: $/MHz, the x86 architecture spanks the commercially available G-series (Mac).

      great! i'll give you my commodore 64 for FREE. that will have the best $/MHz ratio possible. i'm sure you'll love it.

    5. Re:Here we go again: by znu · · Score: 5, Informative

      That's not really true at the high end. The P4 doesn't support multi-processor configurations, and Intel charges a major price premium for Xeon chips. Dell wants ~$4000 for a dual 3 GHz Xeon with specs similar to the $3000 dual 2 GHz G5.

      You could probably do a bit better building your own dual Xeon system, but it still wouldn't be cheap. You're looking at probably $1300-1500 just for the motherboard and the chips -- then add a case, RAM, a hard drive, a DVD burner, a video card, etc. and, for most potential buyers, a copy of Windows XP Pro.

      --
      This space unintentionally left unblank.
    6. Re:Here we go again: by x136 · · Score: 4, Informative
      AMD's Hypertransport is basically (exactly?) the same thing.
      Calling it "AMD's HyperTransport" isn't quite accurate. AMD is part of the HyperTransport executive committee, however. From The HyperTransport Consortium's About Us page:
      Advanced Micro Devices, Alliance Semiconductors, Apple Computers, Broadcom Corporation, Cisco Systems, NVIDIA, PMC-Sierra, Sun Microsystems, and Transmeta are charter members and comprise the Executive Committee of the HyperTransport Technology Consortium.
      That said, Apple does make use of HyperTransport technology in the Power Mac G5, as is stated on the Architecture page of the G5 site:
      ...as well as the HyperTransport interface that connects the PCI-X controller and the I/O subsystems to the system controller...
      --
      SIGFEH
    7. Re:Here we go again: by WinterSolstice · · Score: 4, Insightful

      So... which platform has more techincal diversity and freedom from proprietary dead ends?

      x86 - 2 chip manufacturers
      PPC - 2 chip manufacturers
      64bit/32 bit chipsets - 2 for Mac, 1 for PC, 1 for Sun, 1 for IBM
      Linux - Almost all platforms
      BSD - Almost all platforms
      Upgradeable with off-the-shelf hw - Mac, PC, Sun
      Basic GUI - Most platforms
      Complex multi-button mice - Mac, PC, Sun, IBM
      Simple one button mice - Mac
      FireWire 800 - Mac, PC
      FireWire - Mac, PC
      Gigabit adapter - Mac, PC
      Wireless (bluetooth, 802.11, etc) - Mac, PC
      Office software - Most platforms
      Image editing software - Most platforms
      Video NLE software - Mac, PC, SGI, Sun
      Audio NLE software - Most platforms
      Rendering software - Mac, PC, SGI, Sun, IBM
      NURBS software - Max, PC, SGI, Sun, IBM

      Did you get this far? Do you get my point?
      You can spend forever arguing about this kind of junk. What it comes down to is almost always personal preference. To respond to: "technical diversity and freedom from proprietary dead-ends." This simply doesn't exist. It is ALL proprietary, and nothing is technically diverse. All code that is written is written to a proprietary platform (until an Open-Source chipset comes along). Sure, you can see the code for the basic software, but what does that do for you? No high-end software comes with open source. I don't see Adobe or Discrete or AutoDesk moving to the OSS model. Funny that. Looks like anyone can reverse-engineer a pretty good word-processor, but it must take work to make a serious (not hobbyist) application.

      Pbbbbt. :P

      -WS

      --
      An operating system should be like a light switch... simple, effective, easy to use, and designed for everyone.
    8. Re:Here we go again: by rsborg · · Score: 4, Interesting
      I'm confused. Newegg claims to sell the Opteron 240 for $300 -- oh wait, I'm out of date -- they're $255 now. Is this a scam or something? I have a hunch it's for real, and they'll actually ship the chips if I pay them.

      Hmm... lets see... you're comparing a processor to a full system. Apples vs. Oranges.
      Lets do some real analysis... top server vs. top server:

      • A fullly specced dual G5 2.0Ghz ... $2770
        vs.
      • a similarly specced dual Opteron 244 1.8Ghz.... $3013
        And this isn't even from big boys like Dell (who wouldn't be caught dead using AMD)... just a bottomfeeder from pricewatch.

      Now, the G5 has all sorts of desktop/workstation goodies built in (Radeon 96/9800 Pro, awesome sound, good looks), and the with AMD server, you can cut corners with things you don't want in a server, like soundcard, highend video card, etc.

      My point? im sure we're still comparing apples to oranges. People who want a mainstream kickass workstation will love to buy the G5. People who want beowulf node clusters or inexpensive uberservers will love the Opteron. I just wish I had either :-)

      --
      Make sure everyone's vote counts: Verified Voting
  3. What license is this under? by burgburgburg · · Score: 4, Interesting

    This is a preview beta. What will the final product be released under?

  4. Duke Nukem Forever - you don't get it by Anonymous Coward · · Score: 4, Funny

    >So will this new compiler speed up the process of porting Duke Nukem Forever to the Mac?

    Sorry to burst your bobble, but there's a reason why the game name's Duke Nukem *Forever*. That's the amount of time it will take to make it.

  5. Re:So much for open source at IBM by nomadic · · Score: 5, Insightful

    And is there a particular reason why IBM couldn't apply their work towards gcc? So much for the whole open-source, contribute-to-the-community philosophy.

    Maybe they just didn't feel like it. Maybe they just preferred working with their own code. IBM's contributed, a lot, it doesn't mean that they're now servants of the open source community.

  6. Re:can it compile the kernel? by SuperBanana · · Score: 4, Insightful
    worthless if it's not gcc compatible to compile the kernal

    Believe it or not, people DO sometimes run singular tasks on hardware which they want highly optimized...and believe it or not, you can actually install more than one compiler on your system at a time(yes, I know, amazing!)

  7. Re:So much for open source at IBM by finkployd · · Score: 4, Insightful

    IBM has contributed more to the open source community than I would venture to guess any other corporation on earth. (think of the code, projects, money, support, etc). I would not be so quick to blast them for not doing everything under an open source license. Encourage yes, but let's be civil about this. IBM is not just blowing smoke about OSS, they have put their money, time, and products where their mouth is.

    Finkployd

  8. Re:why don't they just improve gcc? by levik · · Score: 4, Funny
    Is there some good reason why IBM doesn't just give away fre ThinkPads? I mean programmers use thinkpads... Managers use thinkpads. Thinkpads are pretty decent laptops...

    Why can't they just give them away for free?

    --
    Ñ'
  9. It's just not that easy.. by jcr · · Score: 4, Informative

    GCC's whole purpose is to be the most portable compiler possible, not the best performing on any particular architecture.

    XLC has a different set of design goals, and the internal architecture of the the compiler is different enough from GCC that there wouldn't be much point in trying to graft them together.

    -jcr

    --
    The only title of honor that a tyrant can grant is "Enemy of the State."
  10. Re:A Discussion over at Ars... by sockit2me9000 · · Score: 4, Informative
    Wow I really screwed the pooch with formating that. This is a clearer spec:

    Type of Code G4 G5

    Scalar +70% +210%

    Vector +40% +70%

    If this holds that places his 2.0GHz G5 (single)=254 at 787

  11. Re:So much for open source at IBM by afidel · · Score: 4, Informative

    Maybe because the optimizations require a view of the G5 that does not work with the generic view that GCC has of a processor. IBM tried to submit GCC patches but they were rejected because the GCC team did not like how deeply they affected the GCC core. GCC is THE cross platform compiler, the PPC 970 is enough different from the assumptions it makes that it will not produce optimal code without structural changes and the team doesn't want to do that.

    --
    There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
  12. Questions. by emil · · Score: 4, Interesting
    1. Can this compiler be used on any open-source unix-like kernels? I know that Linux has some hooks into gcc.
    2. Can this compiler be used to prepare glibc or any other major C libraries?
    3. Can this compiler be used to generate native Mac OS X GUI applications (cocoa)?
    4. Will the source be released?

    It is good to see IBM ending the habit of charging extra for the C compiler. AIX hasn't bundled the compiler since 3.2.5.

    1. Re:Questions. by Wesley+Felter · · Score: 4, Informative

      Can this compiler be used to prepare glibc or any other major C libraries?

      I'm sure xlc is used to compile AIX libc.

      Can this compiler be used to generate native Mac OS X GUI applications (cocoa)?

      No, it's not an Objective-C compiler.

      Will the source be released?

      No.

  13. Re:Why? by Theaetetus · · Score: 5, Interesting
    I'd imagine one could cook up code to make whichever machine they want look "faster".

    Um, that's the point. IBM cooks up code to make the G5 look as fast as possible. Intel cooks up code to make the Xeon looks as fast as possible. Now compare. Fastest code/chip against the competition's fastest code/chip. The complaint in the past was that it was always the fastest code/chip of one side against a non-optimized code on the other side. Now we can have a fair shootout.

    -T

  14. Re:So much for open source at IBM by southpolesammy · · Score: 4, Insightful

    And is there a particular reason why IBM couldn't apply their work towards gcc? So much for the whole open-source, contribute-to-the-community philosophy.

    First off, most companies develop compilers for their hardware/software because they have the behind-the-scenes knowledge necessary to produce a superior product, and therefore, make money off of it. It's called having a competitive advantage, and I see nothing wrong with that.

    Second, who says that they won't eventually work to get these performance enhancements included into a future release of GCC? Just because they haven't done so yet does not mean that they never will.

    --
    Rule #1 -- Politics always trumps technology.
  15. Why not GCC? Why not GCC? by finkployd · · Score: 4, Insightful

    I know everyone wants to know why they did not just contribute to GCC, but seriously people, I imagine they have their reasons.

    Perhaps they wanted something done in a timly manner without waiting for the GCC people to accept their patches. Perhaps they felt a more elegant solution could be achieved by building their own compiler from scratch. Maybe they think GCC is a piece of crap (which for high performance computing, it is).

    Just because IBM support open source does not mean they are obligated to do everything for the sole purpose of advancing the movement.

    Finkployd

  16. Interesting, but... by Doktor+Memory · · Score: 4, Interesting

    I wonder how the AltiVec support in XLC for OSX compares to that in GCC?

    This is actually really important. One of the big reasons that the Intel C compiler spanks every other available x86 compiler is that its SSE/SIMD support is, in the words of one of my assembly-programmer friends, "awe-inspiring." Like, unrolling entire program loops and replacing them with single SIMD instructions.

    As far as I know, pretty much all of the AltiVec/VMX support in GCC was contributed by Apple and Motorola, and prior to the ppc970, IBM has never produced a PPC CPU with AltiVec instructions, so prior versions of XLC have never had to support it. So I'll be really curious to hear how it stacks up against GCC's Altivec.

    --

    News for Nerds. Stuff that Matters? Like hell.

    1. Re:Interesting, but... by sockit2me9000 · · Score: 4, Informative

      I read that there is a fairly large difference between the size of a gcc compiled instruction set (100k) and the XLC compiled instruction set of the same origin (700k). Presumably they are doing some pretty impressive unrolling and inlining. I got that at this dicussion here .

  17. Re:So much for open source at IBM by Tal+Cohen · · Score: 4, Interesting

    (Disclaimer: I used to work for IBM Research. This is not inside info.)

    The XL line of compilers has a long and glorious tradition. What matters most here is compatibility with existing code. IBM doesn't optimize XLC so you could get a faster kernel, it optimizes XLC so they could recompile DB/2 on AIX and get faster results; and also, obviously, for many of their other products. Another consideration is those clients that have a large codebase used with XLC.

    The world of C/C++ is rather sad in that code is not only non-cross-platform in most cases, it is also commonly unlikely to compile using a different compiler on the same platform. Moving from XLC to gcc would mean throwing away an investment of decades in the compiler, not to mention the huge amount of work required to port the source code of products such as DB/2. So IBM helps gcc, and also invests in XLC. There's no conflict here. I would not be surprised if many of the various optimizations employed by XLC will eventually find their way to gcc -- by the very same IBM researchers.

    BTW, talking of optimizations, people in IBM Haifa have developed an amazing post-compile optimization tool

    . Now, seeing an open-source version of that would be cool. Not very likely, though, since this is the source for some of the performance edge DB/2 has over its competitors.
    --
    - Tal Cohen
  18. Re:So much for open source at IBM by Daniel+Boisvert · · Score: 5, Informative

    If the parent or grandparent had glanced at the PDF, they too would have noticed that GCC compatibility was one of the major points covered. There are a few pages devoted to what currently is compatible with GCC as well as what's planned. My bet is that they've had their own optimized compiler around since they first fab-ed one of these, to use for test purposes.

    It would be foolish to scrap all of the work they'd already done, as well as the performance achieved (double the performance of GCC in some cases, from the PDF). There is mention of this compiler supporting SuSe Enterprise Edition however, but not enough detail to tell if it can compile SuSe or just compile *on* SuSe.

    If there is a plan to integrate stuff from this compiler into GCC, my guess is that GCC compatibility would be the first step. It would be very difficult to try to integrate the two if they have fundamentally different structures and no common ground to speak of, not to mention that fact that chip manufacturers invariably keep the true capabilities of their hardware more or less secret until launch time, and putting code into GCC from the beginning may tip their hand to others before they're ready to do so.

    obDisclaimer: IANACompilerGuru

  19. Re:So much for open source at IBM by p3d0 · · Score: 4, Interesting
    And is there a particular reason why IBM couldn't apply their work towards gcc? So much for the whole open-source, contribute-to-the-community philosophy.
    Oh please. It's not like there's only one compiler team in IBM. IBM is contributing big time to gcc, and they also maintain their own compiler for customers who want that. IBM, like any smart company, hedges its bets, so they work on multiple overlapping projects. Do you expect them to bet the company on technology they don't control? The kind of reactionary thinking that would have them switch all their manpower to gcc is exactly what kills a lot of less prudent companies.

    Plus, the team working on this compiler would probably take several man-decades---if ever---to become as fluent and comfortable with gcc as they are with their own code.

    (Disclaimer: I work for IBM. In fact, I work on a compiler for IBM, though it's neither this compiler nor gcc. My opinions don't reflect those of IBM.)

    --
    Patrick Doyle
    I mod down every jackass who puts his moderation policy in his sig. Oh, wait a sec....
  20. Re:Let's be objective by stingerman101 · · Score: 5, Informative

    Do your homework. Apple modified the tests to reflect the actual shipping models, since they were running on prototype G5's. These issues have long been put to rest and Apple just updated their results the other day with actual shipping G5's. Get out of denial, x8 is not a religion, it's a processor for goodness sake.

  21. A Question by 1000StonedMonkeys · · Score: 5, Funny

    Is the word "fanboy" used by anyone but fanboys?

  22. Re:can it compile the kernel? by Doktor+Memory · · Score: 4, Insightful

    Eh, I wouldn't say that GCC is "worthless", it's just that its worth lies in an area that has nothing to do with high-performance computing. Or even mid-performance computing. :)

    GCC's primary virtue is that it exists. For practically every computing platform on the planet, there's a famliar, stable toolchain that produces repeatable results. You can't optimize a program that doesn't exist in the first place, and GCC is the tool that's allowed many if not most of the programs we use on a daily basis to exist. There's value in that.

    --

    News for Nerds. Stuff that Matters? Like hell.

  23. Re:G5 upgrade woes by kerry-buckley · · Score: 5, Funny
    My 486/66 with 8 megs of ram that has the SoBig and Blaster virus runs faster than this G5 dual 2GHz machine at times.
    But I bet whoever sold you the Quadra tower sprayed silver and with "G5" written on it in crayon is laughing.
  24. I can definitely believe it by TheTranceFan · · Score: 5, Interesting
    I personally ported Macintosh Adobe Premiere 4.0 from 68000 to PowerPC. This was right when the PowerPC-based Macs were introduced (before, actually, since Apple was providing us with prerelease product). At that time, Apple's internal C compiler (then MrC) wasn't ready for primetime, nor was ThinkC. We'd been using MPW for the development, but the only good compiler for PowerPC was IBM's compiler. So I edited/built/linked the whole thing over the network on an RS/6000(?) somewhere at Adobe. I remember when I turned the optimizer on, Premiere got twice as fast, just like that.

    The IBM compiler dis some wild instruction reordering which made the optimized compiled code really hard to understand, but somehow better fitted to the processor's pipeline structure. Fortunately the only thing that broke when I turned on the optimizer was the "marching ants" used for selection, and that was the result of some way-too-fancy-casting of Pattern pointers that fooled the optimizer. I suspect the IBM compilers will continue to reign if performance is the goal.

  25. Re:Got something to back that up? by finkployd · · Score: 4, Insightful

    No, I don't mean scientific computing. I mean high performance computing. SP clusters, Linux clusters, weather modeling, the stuff that large universities do. No offense but where I am we run significantly larger clusters than SARA has ever seen.

    GCC is a great compiler, I use it daily. Better than Intel and IBM for performance (expecially FORTRAN) it is NOT. It was designed as a cross compiler and in that it shines. But it is not all things to all people.

    I certainly did not flame GCC and all the people who work on it, come back down off your high horse. All I did was list some reasons why IBM may not have used GCC, one of which is that most of the HPC people I know and work with have tested it and found it to be unacceptable for what they do.

    That said, I certainly can see a day when GCC IS the best performing compiler, hands down. I believe open source will eventually overtake most commercial applications due to the momentium it currently has. However it would be silly of me to say that MySQL is better than Oracle, when it clearly is not (yet).

    Finkployd

  26. The speed could be infinite. by Aqua+OS+X · · Score: 4, Funny

    The speed could be infinite. IBMs new complier is powered by rainbows, dreams, wishes, magic gumdrop sprinkles, and imagination. Theoretically speaking, you could bypass the rainbows, dreams, and wishes; while using a wrapper to off-load the burden of the magic gumdrop sprinkles to the flux capacitor. Then you could primarily focus your development on imagination... which would allow you to compile and run applications at a speed predetermined by your imagination.

    I've also heard that the wishes and dreams can be fairly powerful tools as well. However, results may vary due to unfulfilled wishes and crushed dreams.

    --
    "Things are more moderner than before- bigger, and yet smaller- it's computers-- San Dimas High School football RULES!"
  27. Re:Let's be objective by Lars+T. · · Score: 4, Funny

    IOW, the PC fanboys are just going to claim that SPEC was "developed natively for the mac".

    --

    Lars T.

    To the guy who modded me down from perfect to terrible Karma - Apple haters still suck

  28. Speed is Irrelevant by gbulmash · · Score: 4, Informative
    We can talk specs all you want, but most multimedia pros who are running OsX or Windows have invested more in software than hardware. And that's where all the talk of speed breaks down.

    If I go from Mac to Intel, or vice versa, and I'm not the type to pirate everything from friends, warez sources, or p2p, then I have to buy (prices from Amazon.com, rounded to nearest dollar)...

    • Ms Office Standard (Win: 347 / Mac: 357)
    • Photoshop (Win: 580 / Mac: 590)
    • Illustrator (Win: 390 / Mac: 403)
    • Premiere 6.5 (Win: 540 / Mac: 533)

    So the cost to switch is:

    To Mac from Win: hardware + 1883 software
    To Win from Mac: hardware + 1857 software

    And that's just the basics for a good multimedia development set-up. If you code, create Flash/Shockwave, etc., then you can add on another $500-1000 for other tools... or more.

    Bundles and other incentives can bring it down, but this is not an inconsequential cost. Even if you could get a 10% faster PC for the same price as a Mac, or a 10% faster Mac for the same price as a PC, you have to ask yourself how much that 10% is really worth to you.

    How often will you utilize all the capabilities of the machine and stretch the system past the capabilities of the alternative? How many hours of labor will the system save you over time?

    And when all is said and done, you can scream over benchmarks and which is the better OS all you like. But they're totally meaningless.

    (Mac fans can claim Windows has an inherently higher TCO, but let's face it, that's if the user is someone who thinks GNU is a Milton Bradley game that succeeded Gnip-Gnop. The rest of us know that a well-educated Windows user can avoid many of its pitfalls.)

    Each time I've upgraded my hardware, there's one question I ask when I consider whether to switch platforms... What's the bottom line? How much more would this cost or save?

    When I worked it out in 1993, a 486 DX2/50 by mail-order beat an education priced Quadra 40 from the university. Since then, I've invested much more in software that I had as a student... Even though the hardware costs are becoming less of a factor, the software costs have become more of a factor to compensate.

    If I won the lottery, I'd buy a Mac and all the cool software I wanted. But barring that, I'll be looking carefully at Prescott versus Athlon 64 in the coming months, and making my choice in the Wintel world because that's where my software is.

    So, though this compiler news is cool if you're a Mac User, because it makes your platform better *for you*, the arguments about whether Mac beats WinTel are a lot of sound and fury, signifying nothing.

  29. oh sweet jesus by klez23 · · Score: 4, Insightful

    Can't we talk about Macs on Slashdot without having to talk about whether they're overpriced or slow or whatever? I have a Mac, I like it, I use it for lots of things. I'd like to be able to discuss it, rather than just read x86 users' posts about how much better their platform is & why. This article is about a complier, not comparison shopping. Could we stick to that please??