So is fully custom hardware. Neither are a good general solution.
How does a profiler determine how *well* a program can be optimized? It certainly can determine where to attack the problem, and perhaps how big the challenge is, but quantitatively how well?
formatting link
(no internet connectivity
Keith
Didn't find your answer? Ask the community — no account required.
M
Martin Brown
its time.
Quantitatively on realistic compute bound performance benchmarks like SPECint95 they are about 15-20% better on average than the best static optimisers. Probably slightly better now for heavy numeric code, but the first open access review paper I found is from 2000.
formatting link
It is a very nice introductory paper on the subject.
The compiler can try all the tricks of loop invariance, inlining and unrolling loops that it knows on a small section hotspot to find by trial and error what works to make things go faster and what doesn't. There are known heuristics most people would use but the compiler can try them out in all combinations and then make the best choice.
Programmers worry about aggressive optimisers breaking perfectly valid code. But these days a human would struggle to satisfy the no stall rules and maintain readability for a pentium processor whereas a decent compiler can shuffle instructions around to make best use of the pipeline.
FFTW does something similar at runtime to encode the wisdom of the order in which to apply the small radix codelets for maximum performance. After the wisdom has learnt how to do it same length transforms are much faster running on that machine.
formatting link
Those keywords ought to get you something comparable.
Regards, Martin Brown
** Posted from
formatting link
**
M
Martin Brown
formatting link
formatting link
You can hope all you like, but the reality will be different. Hardware designers have hit the wall on clock speed so they are trying to gain benchmark performance by going multicore to keep Moores Law on track.
Unfortunately very few real world applications can exploit this sort of performance well enough to be worthwhile (and those that do require careful recoding for parallelism). Existing kit is already fast enough for most home and office users - there is no compelling reason to upgrade. Even less if you stick with XP and shun Vista. The 64bit variants are a joke with missing drivers - although useful for chess programs where the 64 bit registers map nicely to an 8x8 board.
BTW Apples OS/X can be coddled to run nicely on some PCs.
"Interesting" with the Chinese usage (ie bad). "May you live in interesting times" was a curse.
I think I will start a new thread for software engineers advocating multicore wire and multicore solder as the one solution to all electronic design issues. It would be about as misguided and equally inapplicable as John "bug free" Larkins solution to all software engineering problems of "more CPU cores".
PS I do not dispute that flexible multicore cables are useful or that multicore solder works better at the bench.
Regards, Martin Brown
** Posted from
formatting link
**
J
John Larkin
formatting link
formatting link
AMD, Intel, Freescale, IBM, and Microsoft bow to your wisdom. After reading your post, all have canceled their multicore processors and OS plans. Computing has reached its provable limit of perfection with
32-bit Vista running on single-core x86, all coded in C++ .NET. I am humbled by your insight.
The future is in bigger, better, feature-loaded, recursive bug tracker suites.
John
J
Jan Panteltje
On a sunny day (Wed, 27 Aug 2008 06:59:52 -0700) it happened John Larkin wrote in :
OK, I will byte. Your future could be in sci-fi writing ;-) An honest question: Have you ever written a multi threaded program in C? Threads have their own problems, recently somebody ?here? stated that it sucks if your application shows endless flashing messages when it is killed. (example: xine media player, the not threaded 'mplayer' simply stops when killed, while xine seems to display a message for each thread...). Anyways, marketing, especially Intel, not a day goes bye without some new details of some new processor with some new architecture, maybe to scare the ... out of the competition, but I really do not think AMD falls for that, it just got a techy as CEO. But people do (you are one of them), and that is important for Intel, as it is people who have to buy. It was fun seeing Nvida's (they are in financial trouble) marketing druids reply that that multi core graphics idea (larabee?) was only comparing itself to
2006 Nvida chips... Nvidia now claims they have 20 Tera flops in a few years, and go 3D.
3D seems to be unfolding the next big thing....
So, do not fall for every marketing blurb from the big companies.
More and more the big companies seem to get strength from the open source community, I just found that the latest and newest Philips TV uses open source code... Now who will have to write that code? Who wrote that code? You programming freaks, and freaks in the sense of those who _love_ to program, improve each other's code, and are very inventive sometimes with little resources (compared to MS / Intel / IBM who can throw millions at something).
J
John Larkin
No. I have written three RTOS's. I have no plans to do a fourth. For serious-performance embedded systems, the future is uP+FPGA or multicore uP.
killed.
killed,
Microsoft stumbled into the x86 architecture and can't shake it. How many times have they tried? There was that 32-bit super-CISC flop (HP3000-like... what was that called?), I860, I960, the ARM flirtation, Itanic. AMD invented the 64-bit x86.
John
J
JosephKK
killed.
killed,
Could that have been the i432?
J
John Larkin
killed.
killed,
iapx432.
formatting link
formatting link
formatting link
John
J
JosephKK
killed.
killed,
Yup, i was close enough to jog your memory. Quite the museum piece now.
J
John Larkin
is killed.
killed,
Expensive one. It was computer-science driven, like the HP3000, but the 3000 eventually made money, and this one was a bust.
I wonder if Itanic will ever turn the corner. That has been *really* expensive.
John
J
JosephKK
is killed.
killed,
I think that the jury is still out on that one. I do not think that they will ever make money on their own. But the advances made for that line have been incorporated into pentuims for some time now, in particular larger caches and better cache coordination.
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required
Report Content
You are reporting this content to the moderators. They will look at it
ASAP.