Prepare to spring. There are presently dual processor motherboards on the market, so the 'proof of concept' has been ironed out for decades.
AMD has announced a dual core chip that is coming out next year. I am not at liberty to discuss this more than what is published here . But to paraphrase someone who would indeed know what he's talking about (despite my disdain for the man, personally)
One of the most powerful things next year is going to be our dual-core product. To me, that's going to really shock the hell out of everyone, because it's going to be hardware-compatible, infrastructure-compatible, pin-compatible. I mean, people that have a 2-P system can slap in a dual-core product and end up with a 4-P system for the price of a 2-P.
It does. The critical section problem still exists: for all practical purposes, you must treat it as if there are two CPUs. In addition, there is a "yield" instruction that should be used by spin-locks, which will give control to the other CPU in a hyper-threaded processor.
If the hyperthreaded CPU acts identically to a real 2 CPU machine, I'll spring for one of those ASAP.
No, it doesn't. The two CPUs in a hyperthreaded processor share some functional units. I'm not sure which ones, but the floating point unit is a likely candidate. So, if both CPUs try to do a floating point operation at the same time, one must wait for the other to finish.
Intel claims that running two instances of the same application on a hyper-threaded CPU yields a 15-30% increase in throughput. SPECint_rate2000 measures about 10% increase in throughput.