Vegeta said:
I'm really disappointed by AMD, guess i'll have to go intel for the first time.
Why disappointed?!
You do realise that the Core architecture is not currently available, don't you? If you needed to build a system today, Socket 939 and Athlon 64 X2s are still the best you can buy. Yeah, the early Conroe benchmarks look good, but take them with a pinch of salt, nobody has had full production version access yet. We know nothing about their true overclocking potential or their real cost. We also don't know for sure what AMD will be doing when Conroe is fully released.
As we speak, AMD are still the performance kings. We can look forward to the future, but we cannot judge that which we do not know.
Dunky said:
I feel this is more of marketing gimmick by AMD. There's really no use for such a technology except as a proof of concept. This type of technology will probably give developers an excuse to not producing fully multi-threaded and scalable programs - It's basically a step backwards. We should be developing programs which use threads so that programs will scale well. Also such a technology will probably not scale well as it would only be able to split a thread up so much. At the end of the day, there are very few cpu-intensive applications that are still single-threaded. Games are one of them however this is changing with multi-threaded drivers and games starting to appear. Music and Video compression algorithms are largely multi-threaded so are large applications like Photoshop. In conclusion - I wouldn't get too excited about it.
I don't think developers will use it as an excuse for poorly threaded code. If you consider professional level content creation programs, by that I mean something like Adobe Photoshop or 3Dmax, the sort of programs that people build big workstations for - then (aside from them already being multithreaded) developers are going to want to try and keep Intel users happy, and making programs that don't scale well with regards to extra cores would alienate Intel users.
The other kind of program that benefits from more CPU power is games. And for a games developer, it is basically shooting yourself in the foot to write your games in a way that is poorly threaded since it will make ports to the Xbox 360 and the PS3 considerably more difficult. Even for PC only developers, it would still alienate Intel users, which is never a good thing.
What this is good for is legacy applications. Older, or at least current, games which aren't multithreaded will benefit. Lots of old, but still usable, custom business software will benefit. Loads of stuff that currently depend upon a single thread will benefit. Even programs that are currently multithreaded will benefit; you can have a program that spawns 20 threads, but if 19 of them barely do anything and only one uses lots of CPU times, then you will still find that a multiple-core machine will not be used to its full potential. This will be because the operating system assigns a thread to a core; but if only one core does most of the work then the program will still benefit from split over two cores.
The thing is, it is incredibly difficult to write code that is really well threaded. Sure, you can write code that spawns extra threads here and there, and that is a good thing. But synchronisation issues are very much at the forefront of any coder who is doing concurrent programming. The other problem is how many cores too take advantage of? Two is a safe bet, but what about in the next year or two when four cores becomes more popular? Adding extra threads does create overheads - this anti-HT idea would give the benefits of adding extra threads but without the overheads that comes with it.