Freezer7Pro wrote:
rdx-fx wrote:
cospengle wrote:
You mean 'arseloads'?
I agree with your point, but you have to realise (as I'm sure you do), that changing to a different architecture isn't as simple as programmers changing the way they do things. If you program in a different architecture then everyone who uses your program will have to buy that architecture before they buy your program. As we've seen with Windows, people don't like to change. Vista has been out for ages and most people still use XP, even though they don't need to buy a whole new computer to run it (except for 64-bit). So to write a program for an architecture that no one has isn't really going to make you much money.
It's not the architecture that's the issue. It's not the users. It's the programmers.
If Windows and Office ran on the new architecture, the users wouldn't really give a damn what was under the hood.
And Vista, too, is a case of user-land not wanting to change. Not because Vista is new and different - but because Vista doesn't do much better than XP (from a user perspective), and does a great many things more poorly than XP.
A trick to getting a new architecture in place;
Make your new platform do everything that the old platform did, using the exact same userland interface and skills - then add a few bells and whistles, and do it much much more efficiently/faster/cheaper than the old architecture.
Case in point: Every generation of video cards. Does what the old cards did, adds a few features to get the press drooling and writing, and does it all better/faster/cheaper than the previous generation.
Another case: MS Office and Adobe CS. Not too hard to bounce between OS-X and XP if you use those two suites alot.
The problem is that we've been doing just that for 20 years now, and we've more or less reached the top of what x86 can perform.
I'm not really sure how this argument started, but you're both kinda right and you're both kinda wrong.
The problem is not the hardware architecture. It's the software architecture.
Up until now, though Windows implements multi-threading it has always done so using a design that is most suitable for single-core processors (as that was all that was available when those parts of windows were first developed), now, as multi-cpu hardware became common, microsoft added layers to support that, and then an extension of that capability that allowed it to support hyper-threading and then, most recently, it was extended to make use of multi-core cpus.
But, right at its core, it's based on code that was designed to run on single core cpus.
And that's just windows.
Likewise, apps have always been designed to run efficiently on single core cpus.
And games are even worse. Until very very recently
all games ran in single threads.
Multi-core x86 based hardware still actually has a lot of life in it.
Writing code to run efficiently on multi-core cpus isn't simply a case of re-compiling the source code.
You have to actually write the code differently.
But programmers will catch up and all the user really cares about
is the UI, but what's under that UI needs reworking before the true power of multicore x86-based cpus will become apparent.