I couldn't agree more. This is one of those articles where the only real information is in the comments of slashdot readers, many of which have shown in their posts today that they have a much better grasp on the author's topic than the author did.
Those MIT folks should figure out how to distill higher rated slashdot comments into papers, instead of just random buzzwords... Not only would they be accepted to conferences, but they generally would be worth the read.
I have to note that these allegations that IIS hosted sites rank higher in MSN search aren't good at all -- as far as I can tell, believing that MSN tweaks its results in favor of sister products and companies taints the search results to me.
In other words, now MSN search has, for me, become an inferior search tool.
Do I believe that MSN has fudged things in its favor? Yes. Might believing that encourage me to switch to a more neutral search engine? Yes again.
It looks to me like Microsoft took a gamble on this one, supporting IIS at the risk of alienating users if they got caught, and they got caught.
All these 'who cares' posts are killing me -- does nobody have any imagination?
New technology is good because it makes possible new applications. There's plenty of good money out there for people who are creative and visionary enough to realize that a whole new class of problems and applications just became reasonable with this hardware improvement...
I concur that something like web browsing is pretty much bound in performance to internet connection, not processor. All that means is that applications like web browsing are ripe to be replaced with something more interactive, more meaningful, things that you couldn't do when the web was invented because the hardware hadn't been invented yet that you need.
Assuming you get back to 'good old fashioned efficient coding' (and don't get me wrong, I'm a performance oriented coder myself), useful computational work is limited by two things: processing time, and memory space.
This new technology is a means of decreasing (or therefore increasing the available) processing time, which leads to the The Point:
Better hardware lets you solve Bigger / Better problems. That's why people care.
If you already have the hardware to solve every problem that was ever interesting to you, then by all means, ignore advances like these. But every improvement in computational power is an expansion in the all-important-realm of problems which can be solved in efficient, fiscally responsible manner.
In layman's terms, more power means more interesting and useful potential applications (and employement for the software development community at large).
Not bummed out yet? Massive parallelism works well for people doing scientific computing, but for the average joe, it's useless. I don't care how fast a processor is--I usually have one task that will crush it--but rarely do I have two time-critical things to worry about at the same time. In the article referenced, they had to work hard to find things that would test the dual-core features.
I had a small epiphany reading a review of one of these dual cored setups that released this week. One of the reviewers (I'd link, but I don't know where) mentioned that in a benchmarking discussion with a coworker, someone mentioned that the only reason we don't do benchmarks like 'run a mega intense first-person-shooter while doing some large encoding job in the background' is because until now we couldn't...
The point was having dual cores will let you use the computer in ways you haven't been able to before. If you continue to use a dual core machine the same way you've always used a single core machine (and we've all been well trained on what processes you can run concurrently on a multitasking operating system and which ones you'd just better not), you're not going to see a benefit.
The real benefits will come when people start to realize what they can do with a dual core system. The OS has been able to effectively multitask for a long time now, but most people don't -- they have one application going most of the time. But now we may be able to get out of the real parallelism bottleneck -- the user -- in accomplishing work.
I think this opens up a serious new niche in most application markets -- processes you can start and let run in the background that actually do real work without much user intervention.
And let's not forget, having dual cores is going to make everyone's SETI scores shoot through the roof.:)
No one is so foolish as to make what can be acquired cheaply or free; it's wiser to pick one from among hundreds of platforms and modules that fill in the holes between open source Unix and your applications.
I think this is where he lost me. This is exactly the difference, in my mind, between the linux afficionados and the Microsoft fanboys (throw OS X'ers in there however you like). The Microsoft way is, "it works." The linux way is, "it might work better if..." (And the OSX way is, the linux guys made it work better in this way, so let's adopt it.)
If the entire world were happy with accepting the first solution that arrived for a given problem all the time, there would be no linux, as linux simply re-solves a bunch of 'problems' that were originally solved elsewhere. The point is, sometimes it turns out the wheel you thought was round was really an octagon, and with a little rework you can make it a decagon, or maybe more.
Having the insight to see that there might be a better solution to a problem, the determination to find it, and the courage to use the solution, these are the stepping stones of progress.
But for many people, an octagon is enough, and the extra work of dealing with the decagon isn't worth it. They view the progress as wasted time and effort, and they always will. You can sneak a decagon into where the octagon was, but they won't understand why you did it. So what if there are two more sides? They don't understand why it matters, because to them, it doesn't.
My prime example growing up was my dad in this respect, when I was the teenager always wanting to fiddle with the computer. Sample dialog:
Me: Dad, can I add another 8 MB of RAM to our computer?
Dad: Why?
Me: It will make things run faster and better.
Dad: So, why?
His point was, 'it already works fine.' And he was right, it did work fine for him. It drove (and still drives) me insane to work on his Celeron 533 with 128 MB of RAM and 500MB peak virtual memory usage, where it takes 3 minutes to swap programs. But this is a problem I have created in my own self -- I expect something else.
The real issue of windows vs. linux? Linux people think windows is broken, and windows people don't.
I seem to recall from performance theory that the only true benchmark is how well a machine can perform your workload (where 'your' means the user / buyer / operator / etc.).
If your workload is to see how quickly you can load google's website, well, I just don't know what to tell you. Maybe take a screen shot, print it out, and paste it on the monitor? Voilà, execution of your workload in 0 seconds! Every time! Repeatable!
Sorry, I just don't see why this 'benchmark' is relevant. Funny, yes. Relevant, hmmmm.
Let's suppose for a moment that DRM and all it implies is somehow destroyed. What happens?
1) Major players in these industries take a huge and immediate hit to their stock value.
Currently working for a fortune 500 company, I've seen first hand what happens when a company doesn't hit its stock targets... the board gets a little edgy, which leads to
2) Huge reorganizations and upheavals in said companies to "improve their cost structures", "shift paradigms", huge losses, high expenses, reorganizations, and layoffs.
Now, I'm not saying that (2) above is necessarily bad, because it opens up the workplace again and increases competition. My point is that these companies which are behind DRM have invested mega big bucks in it, and removing it 'just like that' is completely unfair to them, their employees, and investors (and if you have any kind of retirement plan or mutual fund, you, dear reader, are likely an investor).
I'm in favor of something other than DRM, but I don't see a clean way to get away from it now without hurting real people. DRM might suck, but as a wise mentor once taught me, if you want to get things fixed, rather than just complain, come back with a proposal to fix the problem. I don't see a solution here, but I'm not industry expert.
There must be a win/win out there somewhere. Who's going to be the genius that discovers it?
I'm not going to claim I completely understood the XDR memory controller section, but limiting the whole chip (SPEs + PPE) to 256MB seems to effectively rule out any high-end workstation in the immediate future.
Additionally, although there is much speculation about what the processor can run, it is pretty obvious it will not run x86 code. So in order to compete (or take over) in the PC business, it will have to do what every other new architecture in its position has failed at -- overcome the x86 existing compatibility requirement. How could that happen... Hmmm...
1) have a better instruction set -- uh, no, other processors have essentially the same instruction set. And while the relative beauty of an instruction set is often a matter of preference, few people find x86 beautiful.
2) have a higher clock rate? Well, maybe, but not really. Due to a nearly complete (albeit intentional) lack of branch predictive hardware with an 18 cycle flush penalty, it seems clear that a P4 4.0Ghz will smash an individual SPE at 4.0Ghz.
3) be cheaper and cooler? Here, we have a cell processor at 4Ghz and about half the power consumption. A definite potential win. Die size seems comparable, so production costs will be, too, in all likelihood. Packaging might be more complex for the cell, I'm not sure.
4) be more parallelizable? this is the only area in which cell can stomp every other chip. Sure, an 8-way opteron system will beat a single cell processor, but who builds 8-way opterons? And who can do it for the price of one cell system?
I don't think anyone doubts the potential power of these processors. But I think there is a long software bootstrap process to be undertaken before we see mainstream cell desktops. Businesses won't write cell code for consumers unless consumers have cell machines, and consumers aren't going to buy cell machines unless the machines run their apps. The catch-22 that has doomed every new and superior instruction set since the x86 original (backwards compatibility with current software) will likely hold back the cell as well. However, the cell brings something new to the table -- the promise of more raw power.
I think that this bootstrapping process will therefore most likely be driven by the big vendors who need the processing power. Alice and Bob can instant message just fine without one, but if you're building a renderfarm, the power and saved time is maybe going to justify the costs of porting your key apps.
As a side note, if it really does run linux soon after release, one must wonder if the killer app some have been looking for for years to move people from windows to linux may in fact be a killer processor. If you can beat the performance of any x86 windows box by an order of magnitude with a cell linux box, that's an argument that really hasn't been made before.
But right now, it looks like the only real software development market for the cell is going to be the high end workstation / performance chasers, and they need more memory than cell can deliver. I'm not holding my breath for the moment.
I couldn't agree more. This is one of those articles where the only real information is in the comments of slashdot readers, many of which have shown in their posts today that they have a much better grasp on the author's topic than the author did.
Those MIT folks should figure out how to distill higher rated slashdot comments into papers, instead of just random buzzwords... Not only would they be accepted to conferences, but they generally would be worth the read.
I have to note that these allegations that IIS hosted sites rank higher in MSN search aren't good at all -- as far as I can tell, believing that MSN tweaks its results in favor of sister products and companies taints the search results to me.
In other words, now MSN search has, for me, become an inferior search tool.
Do I believe that MSN has fudged things in its favor? Yes. Might believing that encourage me to switch to a more neutral search engine? Yes again.
It looks to me like Microsoft took a gamble on this one, supporting IIS at the risk of alienating users if they got caught, and they got caught.
All these 'who cares' posts are killing me -- does nobody have any imagination?
New technology is good because it makes possible new applications. There's plenty of good money out there for people who are creative and visionary enough to realize that a whole new class of problems and applications just became reasonable with this hardware improvement...
I concur that something like web browsing is pretty much bound in performance to internet connection, not processor. All that means is that applications like web browsing are ripe to be replaced with something more interactive, more meaningful, things that you couldn't do when the web was invented because the hardware hadn't been invented yet that you need.
Assuming you get back to 'good old fashioned efficient coding' (and don't get me wrong, I'm a performance oriented coder myself), useful computational work is limited by two things: processing time, and memory space.
This new technology is a means of decreasing (or therefore increasing the available) processing time, which leads to the The Point:
Better hardware lets you solve Bigger / Better problems. That's why people care.
If you already have the hardware to solve every problem that was ever interesting to you, then by all means, ignore advances like these. But every improvement in computational power is an expansion in the all-important-realm of problems which can be solved in efficient, fiscally responsible manner.
In layman's terms, more power means more interesting and useful potential applications (and employement for the software development community at large).
I had a small epiphany reading a review of one of these dual cored setups that released this week. One of the reviewers (I'd link, but I don't know where) mentioned that in a benchmarking discussion with a coworker, someone mentioned that the only reason we don't do benchmarks like 'run a mega intense first-person-shooter while doing some large encoding job in the background' is because until now we couldn't...
The point was having dual cores will let you use the computer in ways you haven't been able to before. If you continue to use a dual core machine the same way you've always used a single core machine (and we've all been well trained on what processes you can run concurrently on a multitasking operating system and which ones you'd just better not), you're not going to see a benefit.
The real benefits will come when people start to realize what they can do with a dual core system. The OS has been able to effectively multitask for a long time now, but most people don't -- they have one application going most of the time. But now we may be able to get out of the real parallelism bottleneck -- the user -- in accomplishing work.
I think this opens up a serious new niche in most application markets -- processes you can start and let run in the background that actually do real work without much user intervention.
And let's not forget, having dual cores is going to make everyone's SETI scores shoot through the roof. :)
I think this is where he lost me. This is exactly the difference, in my mind, between the linux afficionados and the Microsoft fanboys (throw OS X'ers in there however you like). The Microsoft way is, "it works." The linux way is, "it might work better if..." (And the OSX way is, the linux guys made it work better in this way, so let's adopt it.)
If the entire world were happy with accepting the first solution that arrived for a given problem all the time, there would be no linux, as linux simply re-solves a bunch of 'problems' that were originally solved elsewhere. The point is, sometimes it turns out the wheel you thought was round was really an octagon, and with a little rework you can make it a decagon, or maybe more.
Having the insight to see that there might be a better solution to a problem, the determination to find it, and the courage to use the solution, these are the stepping stones of progress.
But for many people, an octagon is enough, and the extra work of dealing with the decagon isn't worth it. They view the progress as wasted time and effort, and they always will. You can sneak a decagon into where the octagon was, but they won't understand why you did it. So what if there are two more sides? They don't understand why it matters, because to them, it doesn't.
My prime example growing up was my dad in this respect, when I was the teenager always wanting to fiddle with the computer. Sample dialog:
Me: Dad, can I add another 8 MB of RAM to our computer?
Dad: Why?
Me: It will make things run faster and better.
Dad: So, why?
His point was, 'it already works fine.' And he was right, it did work fine for him. It drove (and still drives) me insane to work on his Celeron 533 with 128 MB of RAM and 500MB peak virtual memory usage, where it takes 3 minutes to swap programs. But this is a problem I have created in my own self -- I expect something else.
The real issue of windows vs. linux? Linux people think windows is broken, and windows people don't.
I for one welcome our new subatomic particle overlords.
I seem to recall from performance theory that the only true benchmark is how well a machine can perform your workload (where 'your' means the user / buyer / operator / etc.).
If your workload is to see how quickly you can load google's website, well, I just don't know what to tell you. Maybe take a screen shot, print it out, and paste it on the monitor? Voilà, execution of your workload in 0 seconds! Every time! Repeatable!
Sorry, I just don't see why this 'benchmark' is relevant. Funny, yes. Relevant, hmmmm.
1) Major players in these industries take a huge and immediate hit to their stock value.
Currently working for a fortune 500 company, I've seen first hand what happens when a company doesn't hit its stock targets... the board gets a little edgy, which leads to
2) Huge reorganizations and upheavals in said companies to "improve their cost structures", "shift paradigms", huge losses, high expenses, reorganizations, and layoffs.
Now, I'm not saying that (2) above is necessarily bad, because it opens up the workplace again and increases competition. My point is that these companies which are behind DRM have invested mega big bucks in it, and removing it 'just like that' is completely unfair to them, their employees, and investors (and if you have any kind of retirement plan or mutual fund, you, dear reader, are likely an investor).
I'm in favor of something other than DRM, but I don't see a clean way to get away from it now without hurting real people. DRM might suck, but as a wise mentor once taught me, if you want to get things fixed, rather than just complain, come back with a proposal to fix the problem. I don't see a solution here, but I'm not industry expert.
There must be a win/win out there somewhere. Who's going to be the genius that discovers it?
I'd hate to see you get flammed. Or flimmed. And heaven forbid all-out flim-flammery.
I'm not going to claim I completely understood the XDR memory controller section, but limiting the whole chip (SPEs + PPE) to 256MB seems to effectively rule out any high-end workstation in the immediate future.
Additionally, although there is much speculation about what the processor can run, it is pretty obvious it will not run x86 code. So in order to compete (or take over) in the PC business, it will have to do what every other new architecture in its position has failed at -- overcome the x86 existing compatibility requirement. How could that happen... Hmmm...
1) have a better instruction set -- uh, no, other processors have essentially the same instruction set. And while the relative beauty of an instruction set is often a matter of preference, few people find x86 beautiful.
2) have a higher clock rate? Well, maybe, but not really. Due to a nearly complete (albeit intentional) lack of branch predictive hardware with an 18 cycle flush penalty, it seems clear that a P4 4.0Ghz will smash an individual SPE at 4.0Ghz.
3) be cheaper and cooler? Here, we have a cell processor at 4Ghz and about half the power consumption. A definite potential win. Die size seems comparable, so production costs will be, too, in all likelihood. Packaging might be more complex for the cell, I'm not sure.
4) be more parallelizable? this is the only area in which cell can stomp every other chip. Sure, an 8-way opteron system will beat a single cell processor, but who builds 8-way opterons? And who can do it for the price of one cell system?
I don't think anyone doubts the potential power of these processors. But I think there is a long software bootstrap process to be undertaken before we see mainstream cell desktops. Businesses won't write cell code for consumers unless consumers have cell machines, and consumers aren't going to buy cell machines unless the machines run their apps. The catch-22 that has doomed every new and superior instruction set since the x86 original (backwards compatibility with current software) will likely hold back the cell as well. However, the cell brings something new to the table -- the promise of more raw power.
I think that this bootstrapping process will therefore most likely be driven by the big vendors who need the processing power. Alice and Bob can instant message just fine without one, but if you're building a renderfarm, the power and saved time is maybe going to justify the costs of porting your key apps.
As a side note, if it really does run linux soon after release, one must wonder if the killer app some have been looking for for years to move people from windows to linux may in fact be a killer processor. If you can beat the performance of any x86 windows box by an order of magnitude with a cell linux box, that's an argument that really hasn't been made before.
But right now, it looks like the only real software development market for the cell is going to be the high end workstation / performance chasers, and they need more memory than cell can deliver. I'm not holding my breath for the moment.
Either way, it'll be interesting. :)