I don't know what system you're running that code on, but unless it's rather older than the earth i'm sitting on, it's likely to have a cache. Try the same thing with a random stride.
int main() {
char* bigarray = (char*) malloc(1<<24);
for(unsigned int i = 0; i < 18000000; i++){
int r = rand() & ((1<<24)-1);
char fetched = bigarray[ #ifdef BLOWCACHE
r #else
0 #endif
];
r++; fetched++;
}
return 0; }
(Compile with -O0 and check the assembly code to make sure the fetch isn't thrown away; it isn't on my machine.) Without BLOWCACHE defined:
real 0m2.302s user 0m1.840s sys 0m0.020s
And with:
real 0m8.844s user 0m7.200s sys 0m0.150s
Bring the size up from 16MB to 256MB and on my machine (with 512MB of ram) it takes about three minutes before I get bored and give up. Get it now? Your test isn't exactly applicable.
This is personal experience, working with relatively high power (400W range) fuel cells for RC applications. Yep, catalytic poisoning sucks. In the lab, it's no problem at all, but in the real world it's essentially impossible to both get fuel of the desired purity, and allow refilling (rather than using single-use cartridges). And filtering doesn't seem to be perfected (or even close), yet.
In the future, yes, fuel cells will have advantages over batteries in every way. But for now, I really think that batteries are the way to go in both low power (0-100W) and high power (1kW+) applications for at least the next five to ten years.
Great, I run Maya. Now, does my exclusive 15 minutes include the 5+ hours it's going to take to send the software to them?
Presumably... but why would it take 5 hours? I admittedly don't know maya too well, but transferring over a couple hundred megabytes is not unreasonable, considering they can let you do that to a machine set up for the purpose while someone else is using the testing machine.
Also, will Intel indemnify me against the makers of Maya for any copyright infringment suits that come from my sending it to Intel in violation of the licensing?
No, of course not... if you have software that doesn't let you run it on another computer of your own for testing purposes, that's entirely your problem, not intel's. But I'd be kinda pissed about that...
Also, do I get to custom-configure the memory, hard drive, video card, power supply, mainboard, etc in the computer to my exact specifications so as to get an accurate picture of the performance I'd see under my specific system configuration?
Presumably, it would be in intel's best interest to have a significant but finite number of configurations.
It's a decent idea, but unworkable in the real world.
This is what the real world does (well, with site visits instead of ssh) for purchasing real computers. If intel continues to claim we should buy them for performance reasons, not because they're cheaper than toilet paper, they will eventually have to demonstrate that.
Okay, I can respect your position. But think of it this way.
Sharp wants to make money. It needs to get those money from people. To do that, those people must fill two conditions. (a) They must have money, and (b) they must not be cheap-asses.
While you may or may not pass condition (a), you violate condition (b). Therefore sharp, and many other corporations that produce interesting products, have no interest in you.
Fuel cells also lose most of there capacity within a year (okay, within a month) if used on a daily basis. I'll stick with batteries for long life; the only advantage fuel cells have is energy density.
We should use this for the demarkation between "asteroid" and "planet." An asteroid is one big chunk of rock. A planet is a bunch of little rocks held together by their own gravity.
But then you have the situation that an asteroid can, upon impact, both become smaller and become a planet...
Just out of curiosity, what would you have them do?
Since you ask...
Set up a lab with all of their currently available processors running on all (either widely available, or Intel only) motherboards. Allow people to freely register to access any machine, exclusively, for 15 minutes at a time, by SSH. Allow those people to copy over their own actual software and get measurable performance on the only workload that matters, and base their product selection on that measurement.
Unfortunately, having people buy the machines with the best value for their workload is not in intel's interest.
Yeah, but you do feel silly spending a significant amount on tapes (I have 3x 100GB tapes and 12x 20GB tapes in my rotation) when you haven't had a single drive fail in eight years.
On the other hand, it's great to hear about everyone complaining about drive quality, and realize you got more quality for a lower price (although a higher price per byte).
Nope, they're all seagate, I'm pretty sure. But they're specific ones. 20GB (low areal density), single platter (I'd never buy anything else; if you want more platters, get them in separate drives, so one failing doesn't kill them all; you get improved performance as a side benefit), fluid bearings (quiet, plus essentially immortal), low power (less heat)... good stuff all around.
If you want the ultimate reliability, there's exactly one thing to do. RAID (I use RAID5, personally; 10 can work too) a handful of the drives used in the XBox. They're only 20GB, but they're built to last through murder, hot. 5 of them gives you 80GB usable, and I'd seriously wager on 5 years of normal use before a drive failure... which, of course, won't result in data loss even when it happens.
If you're going to complain about the existing 747s to the point that you're unwilling to use it, yeah, the best way to get around is either not to fly or to build your own damn plane (which isn't actually that hard). Either way, don't complain about your own choices.
When betamax came out, about 90% of current releases could fit on a single tape (given your numbers). 100% could fit on a VHS tape (well, ignoring a few 6-hour experimentals). When DVD came out, about 90% of current releases could fit on a single disk. 100% could fit on a VHS tape (including, now, experiementals up to 8 hours). That's what I'm talking about. What about you?
So build your own damn machine. PowerPC processors are readily available. Verilog compilers (or VHDL, if that's your cake) are also available. Do it yourself, and don't complain.
Put your public key in an avian retrovirus, so anyone with access to pigeons will be able to encrypt stuff for you?
/fnorgby
I don't know what system you're running that code on, but unless it's rather older than the earth i'm sitting on, it's likely to have a cache. Try the same thing with a random stride.
int main() {
char* bigarray = (char*) malloc(1<<24);
for(unsigned int i = 0; i < 18000000; i++){
int r = rand() & ((1<<24)-1);
char fetched = bigarray[
#ifdef BLOWCACHE
r
#else
0
#endif
];
r++; fetched++;
}
return 0;
}
(Compile with -O0 and check the assembly code to make sure the fetch isn't thrown away; it isn't on my machine.) Without BLOWCACHE defined:
real 0m2.302s
user 0m1.840s
sys 0m0.020s
And with:
real 0m8.844s
user 0m7.200s
sys 0m0.150s
Bring the size up from 16MB to 256MB and on my machine (with 512MB of ram) it takes about three minutes before I get bored and give up. Get it now? Your test isn't exactly applicable.
This is personal experience, working with relatively high power (400W range) fuel cells for RC applications. Yep, catalytic poisoning sucks. In the lab, it's no problem at all, but in the real world it's essentially impossible to both get fuel of the desired purity, and allow refilling (rather than using single-use cartridges). And filtering doesn't seem to be perfected (or even close), yet.
In the future, yes, fuel cells will have advantages over batteries in every way. But for now, I really think that batteries are the way to go in both low power (0-100W) and high power (1kW+) applications for at least the next five to ten years.
Great, I run Maya. Now, does my exclusive 15 minutes include the 5+ hours it's going to take to send the software to them?
Presumably... but why would it take 5 hours? I admittedly don't know maya too well, but transferring over a couple hundred megabytes is not unreasonable, considering they can let you do that to a machine set up for the purpose while someone else is using the testing machine.
Also, will Intel indemnify me against the makers of Maya for any copyright infringment suits that come from my sending it to Intel in violation of the licensing?
No, of course not... if you have software that doesn't let you run it on another computer of your own for testing purposes, that's entirely your problem, not intel's. But I'd be kinda pissed about that...
Also, do I get to custom-configure the memory, hard drive, video card, power supply, mainboard, etc in the computer to my exact specifications so as to get an accurate picture of the performance I'd see under my specific system configuration?
Presumably, it would be in intel's best interest to have a significant but finite number of configurations.
It's a decent idea, but unworkable in the real world.
This is what the real world does (well, with site visits instead of ssh) for purchasing real computers. If intel continues to claim we should buy them for performance reasons, not because they're cheaper than toilet paper, they will eventually have to demonstrate that.
Okay, I can respect your position. But think of it this way.
Sharp wants to make money. It needs to get those money from people. To do that, those people must fill two conditions. (a) They must have money, and (b) they must not be cheap-asses.
While you may or may not pass condition (a), you violate condition (b). Therefore sharp, and many other corporations that produce interesting products, have no interest in you.
You managed to omit both nehemiah and the 750FX, two of the best processors out there.
On a speed/watt basis, efficeons are by far the best
Compared to what? The 750FX? The 440GX? Or, um, the other x86 crap out there?
Fuel cells also lose most of there capacity within a year (okay, within a month) if used on a daily basis. I'll stick with batteries for long life; the only advantage fuel cells have is energy density.
We should use this for the demarkation between "asteroid" and "planet." An asteroid is one big chunk of rock. A planet is a bunch of little rocks held together by their own gravity.
But then you have the situation that an asteroid can, upon impact, both become smaller and become a planet...
Just out of curiosity, what would you have them do?
Since you ask...
Set up a lab with all of their currently available processors running on all (either widely available, or Intel only) motherboards. Allow people to freely register to access any machine, exclusively, for 15 minutes at a time, by SSH. Allow those people to copy over their own actual software and get measurable performance on the only workload that matters, and base their product selection on that measurement.
Unfortunately, having people buy the machines with the best value for their workload is not in intel's interest.
But it's also almost guaranteed you can't do X, or X-1, or X-2, or... which is why people feel that it's meaningless.
(-1, offtopic)
ABB? ABB??!! Really? ANYBODY?! How about Ralph Nader?
Yes, ANYBODY. What part of ANYBODY don't you understand? For god's sake, let's get mussolini in there, it'll be an improvement.
Right, because current portable devices don't have heat pipes filled with liquid or anything.
Yeah, but you do feel silly spending a significant amount on tapes (I have 3x 100GB tapes and 12x 20GB tapes in my rotation) when you haven't had a single drive fail in eight years.
On the other hand, it's great to hear about everyone complaining about drive quality, and realize you got more quality for a lower price (although a higher price per byte).
RAID is my storage setup, not my backup setup. My backup setup includes tapes stored off site, of course.
Nope, they're all seagate, I'm pretty sure. But they're specific ones. 20GB (low areal density), single platter (I'd never buy anything else; if you want more platters, get them in separate drives, so one failing doesn't kill them all; you get improved performance as a side benefit), fluid bearings (quiet, plus essentially immortal), low power (less heat)... good stuff all around.
If you want the ultimate reliability, there's exactly one thing to do. RAID (I use RAID5, personally; 10 can work too) a handful of the drives used in the XBox. They're only 20GB, but they're built to last through murder, hot. 5 of them gives you 80GB usable, and I'd seriously wager on 5 years of normal use before a drive failure... which, of course, won't result in data loss even when it happens.
How can you have a medical problem requiring both surgery and subsequent doctor visits, and not learn how to spell it?
Try getting a girl in india. That should help.
I agree. I do some of my best programming when I'm asleep.
Of course, that's because most of my programming takes more man-hours to fix than I put into it.
If you're going to complain about the existing 747s to the point that you're unwilling to use it, yeah, the best way to get around is either not to fly or to build your own damn plane (which isn't actually that hard). Either way, don't complain about your own choices.
When betamax came out, about 90% of current releases could fit on a single tape (given your numbers). 100% could fit on a VHS tape (well, ignoring a few 6-hour experimentals). When DVD came out, about 90% of current releases could fit on a single disk. 100% could fit on a VHS tape (including, now, experiementals up to 8 hours). That's what I'm talking about. What about you?
So build your own damn machine. PowerPC processors are readily available. Verilog compilers (or VHDL, if that's your cake) are also available. Do it yourself, and don't complain.
You can't have a movie on a single DVD, either, but that doesn't seem to stop people from buying them...