Intel Software Development Products for OSX
rgraham writes "Intel has released a number of development tools for OSX, including a C++ and Fortran compiler. I for one would be interested to see some benchmarks of code compiled using these tools and Apple's own Xcode."
Apple uses GCC behind Xcode, so just look for the already-existing comparions of GCC against Intel's compilers.
Fortan is big in the modeling world, still. Oddly enough for a language that is that old, gives clout in science and engineering worlds.
The C++ is nice but since most osx programs are written on objective c, probably of little use.
Those math libraries look like the ticket though. Everone likes highly optimized math libraries.
I wonder if this is the main reason why OS X is so much faster on the Intel chip. I can see the Powerbook getting a good speedboost but 4-5x is a lot more than what you'd expect.
This is only an announcement of "plans", and a sign-up for a "free trial" of a *beta* version of the tools. No obvious word on pricing (OSX's Developer Tools are free), or release dates.
-- http://frobnosticate.com
Its a shame that most of the new OS X dev work is done using Objective-C and not C++. Most of the OS X developers would not be able to take advantage of Intel's optimizations. I wonder whether Apple would bundle this compiler with XCode? Probably not.
FORTRAN has a vector data type, which makes it a lot easier to optimise certain types of code for AltiVec, SSE, etc. If you write the code in C, you have to translate it into scalar intrinsics, and the compiler has to work backwards to attempt to determine the vector operations you meant.
Has ANYONE produced a language with vector-based switch statements?
A pseudo-example might look like
I would do evil things to cute, charming, cuddly [& utterly innocent] little kittens if I thought it would give me this functionality in a language.Not to be snide, but if you have a bit-vector of truth values, can't you just use ints?
Obviously, but now you're embedding "machine code" in an abstract software language.
The purpose of a language is to abstract the "machine code" to the point that a maintainer of the code can glance at the code, and, without too much thought, realize more or less what it is that is transpiring within the code.
PS: A priori apologies if "abstract" is forbidden to function as a transitive verb.
It always underperforms compared to GCC-4.x. But, it always outperforms the benchmarketing, hahahahaha.
By default, Xcode uses gcc. In fact, Xcode itself is just a GUI development environment, you can use it with other compilers (such as IBM's G5 compiler). It's fairly simple to configure Xcode to use Intel's compilers if you find yourself in a situation where Intel's compilers would give you a boost. Where these "alternative" compilers are really helpful is with C++ and FORTRAN. Xcode supports C++ but I'm not sure about FORTRAN.
And you can always compile from the command-line, either directly or with a makefile.
Can it be used to make the Intel portion of Universal binaries along with something else to make the PowerPC code?
God save our Queen, and Heaven bless The Maple Leaf Forever!
Thats a poor test. This particular feature has been with C++ for a while and most C vendors are also C++ vendors. All they had to do is copy it across to C. A good test whould be a C feature which is _NOT_ a C++ feature.
BTW: The place where most so called C99 compiler fail are variant arrays - A feature even ALGOL 60 had (40 years ago) - and it's decendants like Ada and ISO-Pascal still have today. But C vendors can't get it right or worse don't even try.
Martin
*good* C code would use "restrict" where appropiate but C++ does not know about the keyword "restrict".
Just one more example where C != C++.
Martin
True - but C++ was a preprocessor language when it started out as well.
Hello,
Actually there are more then niggling details which seperate C99 and C++ 2003. C++ has new keywords which C++ won't understand. Also C99 has varing arrays which C++ has not got.
Martin
PS: I only care only of and compare the official ISO standarts and not any broken implementation. And older ISO standart have benn superseeded.
PS2: I find it paticular sad that most C vendors are unable or unwilling to implement features which had been part of ALGOL 60, ISO Pascal and Ada 83.
PS3: vector is no replacement for varing arrays since vector needs heap memory and while varing arrays can be created on the stack.
Hello,
/.ter - I inform myself about the subject at hand instead of repeating FUD -). AFAIK or understand Objective-C lives from it's object orientated runtime environment. But could that not be accessed from any programming language?
is that so? Is producing an Objective-C preprocessor realy that easy? If so: How about any other progamming language. There is Objective-C and Objective-C++ - could there be Objective-Ada or Objective-Fortran as well?
I read a little about Objective-C (- I know I never become a real
Martin
I signed up the beta, very shortly after it was announced. Today I got a message from Intel, thanking me and informing me the beta program was full b/c of the overwhelming response.
(Despite the link saying I would get the download information immediately after signing up).
I don't know a tonne about the implementation -- back when Tom Love and Stepstone were pushing it, I was in grad school and far preferred C++, because it didn't cost money. But Objective C did depend on a runtime library to do things like, eg, garbage collection. Basically, if you look at Objective C, everything that had to be translated into C was indicated with @keyword structures, or between [square brackets].
Oh, one other thing: I was wrong to agree that C++ is a preprocessor language in quite the same way, at least since (I think) cfront 1.1. Sometime around cfront 2.0, it became a compiler that compiled to C as the target language. The distinction there is that a "preprocessor" passes some code through unchanged, like ratfor and iftran did, while a C-targeted compiler parses the whole program into an abstract syntax representation and then generates code.
are these products for free (for personal use at least) like the Linux versions?