Faster Chips Are Leaving Programmers in Their Dust
Yes, that's what I've learned in brief with regard to multi-threading in classes I've taken this year (yes I'm still an under-grad). One way around this maybe to look toward OSes handling the CPU resources as one logical processor, but that may not work out so well in the end (in my opinion). In the end, it's just best to figure out which kinds of applications best use multi-processors, and figure out the algorithms that can execute in parallel, and which that cannot. But all this thinking that every algorithm can be made to magically execute in parallel doesn't seem to fit reality, at least for me and my programs.