Cogman
Lifer
- Sep 19, 2000
- 10,284
- 138
- 106
You just described my worst nightmares, thanks. Honestly, you really want animated interfaces with 3d graphics in your standard software? The whole point about a good UI is that it's intuitive and not distracting.
And considering that HT does lots of things the programmer can't even influence, I don't see how it makes programmers lazy or not. Especially considering that usually the executeables will have to run on a vast range of x86 processors.
I've never understood this attitude (not yours, the one you are addressing). It is like people think "If programmers were just better, then HT would be useless." which is not the case at all. HT wasn't invented because programmers do threading terribly. It was invented because the CPU had a lot of wasted resources regardless of what program it was running.
The x86 architecture doesn't give info on which parts are in use, it is pretty much impossible for a programmer to say "I'll run this instruction, then this one, that ways the CPU will be fully busy!". Even if they could by perfectly striping their code (EG mov, then add, then some x87 instruction, ect), they have no guarantee that the CPU wouldn't reorder their code anyways. Furthermore, it is difficult to come up with a function that uses both all of the FPU and all of the ALU at the same time.
Even the converse (which I've seen here) is crazy. Some believe that the performance gains from HT are completely dependent on how good a programmer is at programming for HT. Again, this is crazy because a programmer has no control over when a thread is executed on the CPU. In other words, they can't control which thread gets executed with which, that is an OS level choice.