Linked by Thom Holwerda on Fri 20th Jun 2008 19:58 UTC, submitted by Aron Allen
Mac OS X "SproutCore, profiled earlier this week, isn't the only big news spill out from the top secret WWDC conference due to Apple's embrace of open source sharing. Another future technology featured by the Mac maker last week was LLVM, the Low Level Virtual Machine compiler infrastructure project. Like SproutCore, LLVM is neither new nor secret, but both have been hiding from attention due to a thick layer of complexity that has obscured their future potential."
Order by: Score:

Comment by johkra
by johkra on Fri 20th Jun 2008 20:27 UTC
johkra
Member since:
2007-09-12

This is something I'm very excited about. It can't yet be used for everything, so I went back to gcc, but the underlying technology is very well designed and with a lot of potential.

One of these days I'll have the time to follow the kaleidoscope tutorial and learn how to use llvm to its potential. This will make a lot of things a lot faster and more fun.

RE: Comment by johkra
by Valhalla on Fri 20th Jun 2008 23:23 UTC in reply to "Comment by johkra"
Valhalla Member since:
2006-01-24

Yes, llvm is looking really promising. But seriously, statements like -"Sources report that LLVM-GCC "compiles code that consistently runs 33% faster" than code output from GCC." is obviously not true. No matter how good LLVM is there's no way it will consistently output code that is 33% faster, in reality it won't do that other than in extreme cases. Unfortunately there were no mention of what these 'sources' were.

Unlike the GNU toolchain which strains under the pressure of being the de facto compiler on which nearly the entire open source spectrum depends, llvm is a perfect testbed for new and exciting techniques in code generation. Once it matures it will provide a great alternative to the GNU toolchain and hopefully this will mean we get real competition in the oss compiler arena.

RE[2]: Comment by johkra
by kaiwai on Sat 21st Jun 2008 00:06 UTC in reply to "RE: Comment by johkra"
kaiwai Member since:
2005-07-06

Unlike the GNU toolchain which strains under the pressure of being the de facto compiler on which nearly the entire open source spectrum depends, llvm is a perfect testbed for new and exciting techniques in code generation. Once it matures it will provide a great alternative to the GNU toolchain and hopefully this will mean we get real competition in the oss compiler arena.


That, and the fact that the gcc-llvm front end is going to be replaced with a new one, it'll be interesting to see what the future will be. Its great to have a compiler which is not only going to give gcc some competition but also provide a compiler which is BSD licenced.

RE[2]: Comment by johkra
by thavith_osn on Sat 21st Jun 2008 00:26 UTC in reply to "RE: Comment by johkra"
thavith_osn Member since:
2005-07-11

Unfortunately there were no mention of what these 'sources' were.

Agreed, if you are ever watching the news (esp. Fox and the like) and they use the term "sources" or some other vague term of reference, then it's is something they are adding themselves... It is as reliable as going to a tech psychic (see analyst) and asking them.

Sources say Apple will come out with Ice Leopard a year after Snow Leopard, which will add hologram technology, ZFS++, OpenDirectX and HAL9000 technologies...

The reason we take "sources" as fact is that we want to believe it, OK, maybe not the OpenDirectX - lol...

Edited 2008-06-21 00:28 UTC

RE[2]: Comment by johkra
by Chris Lattner on Sat 21st Jun 2008 02:09 UTC in reply to "RE: Comment by johkra"
Chris Lattner Member since:
2005-11-19

The article was confused. llvm-gcc consistently compiles code 30-40% faster than GCC does when the optimizer is enabled (e.g. at) -O2. The generated code is usually 5-10% faster than GCC generated code, but obviously YMMV.

RE[3]: Comment by johkra
by Valhalla on Sat 21st Jun 2008 04:11 UTC in reply to "RE[2]: Comment by johkra"
Valhalla Member since:
2006-01-24

Chris Lattner wrote:
-"The article was confused. llvm-gcc consistently compiles code 30-40% faster than GCC does when the optimizer is enabled (e.g. at) -O2. The generated code is usually 5-10% faster than GCC generated code, but obviously YMMV."

Thanks for the clarification. Must say that 'usually' 5-10% faster sounds great. Any chance you could point me to your sources regarding this as I'm really interested in code optimization.

RE[4]: Comment by johkra
by Shane on Sat 21st Jun 2008 08:55 UTC in reply to "RE[3]: Comment by johkra"
Shane Member since:
2005-07-06

Chris is the primary author of LLVM. I suppose he is the source :-)

RE[3]: Comment by johkra
by krausest on Sun 22nd Jun 2008 12:39 UTC in reply to "RE[2]: Comment by johkra"
krausest Member since:
2006-01-11

The generated code is usually 5-10% faster than GCC generated code, but obviously YMMV.


Are there any public benchmarks available where LLVM outperforms gcc?

Edited 2008-06-22 12:40 UTC

Snow Leopard is gonna be great.
by officerdick on Fri 20th Jun 2008 20:47 UTC
officerdick
Member since:
2008-06-20

Snow Leopard is going to be the best OS X release ever. Apple is going to get rid of all carbon code, Quicktime is getting a Cocoa overhaul, Safari is getting a new js engine and pass acid 3, we may se ZFS as the standard file system. The system will be optimized for multi-core computing and enterprise deployment. Dashcode will most likely get an overhaul so it integrates with SproutCore, this will be Apples .Net. Xcode will support this new compiler technology. Everything will be faster!!! This release may not have much for consumers, but the devs are all having a nerdgasm.

It would seem plausible that this release would be cheaper than other releases, or hopefully free for existing leopard users, I believe apple has a great interest in getting this on every mac. I would gladly pay 120 dollars for this, my MacBook Pro would be up to 33% faster, cheap upgrade!

This will not be free
by asupcb on Fri 20th Jun 2008 21:18 UTC
asupcb
Member since:
2005-11-10

Why would Apple release Snow Leopard for free? I would think a 15% or more speed increase plus the other stability and programming enhancements would make it worth the upgrade.

RE: This will not be free
by andrewg on Fri 20th Jun 2008 22:39 UTC in reply to "This will not be free"
andrewg Member since:
2005-07-06

Q. Why would Apple give it away?

A. Because to the typical user it looks like a service pack.

Edited 2008-06-20 22:41 UTC

RE[2]: This will not be free
by asupcb on Fri 20th Jun 2008 22:44 UTC in reply to "RE: This will not be free"
asupcb Member since:
2005-11-10

I'm sure Apple will come up with a features list and sell the Operating System that way. In the age of Vista speed and stability look very good on a feature checklist. Plus we know that their PIM Applications will be gaining Exchange support and I'm sure that they will be further tweaking other aspects of the software. I bet there will be at least a 100 "features" in this next release.

Apple will not give this away for free. There is no reason to. There will be lots of people who will gladly pay $129 for this release just for the Exchange support much less a lot of the advanced development features. I'm personally hoping for Screen Resolution Independence in all bundled applications myself.

RE[2]: This will not be free
by evangs on Sat 21st Jun 2008 07:01 UTC in reply to "RE: This will not be free"
evangs Member since:
2005-07-07

If it brings a 15% speed increase across the board, that's nothing like a service pack. That's equivalent to a hardware upgrade.

It would be nice is Apple released it for free, but if you're a company that had all your engineers working on a product for 2 years, would you release it for free?

OpenCL
by daniel.himmelein on Sat 21st Jun 2008 12:56 UTC
daniel.himmelein
Member since:
2007-09-28

The interesting thing about LLVM is that OpenCL probably is based on it. So, writing code for your GPU is the same as writing code for the host CPUs (maybe even in ObjC). The OS can then dispatch the code after JIT compilation to an appropriate processing unit. Maybe this is the breakthrough in multicore Apple announced. That means, they can dispatch the same code to a heterogeneous processing unit infrastructure.

Edited 2008-06-21 13:03 UTC

LLVM is pretty exciting
by boudewijn on Sun 22nd Jun 2008 09:46 UTC
boudewijn
Member since:
2006-03-05

For instance, Cyrille Berger uses LLVM to base his OpenCTL and OpenGTL implementations on -- free sofware compatible versions of the Color Transformation Language (http://ampasctl.sourceforge.net/, http://openctl.org/).
that Krita uses to handle painting correctly in 32bit/channel colourspaces. It's a pity LLVM is pretty hard to compile. It won't compile at all on my shiny new OpenSUSE 11 and needs patching for 64 bits machines.