vmem :
you do realize that multicore support will only get better as time goes on right?
Depends on applications. Non-linear code like parsing text are impossible to multi-thread. Many event-driven interactive applications spend most of their time waiting for user input and therefore gain very little if anything from multi-threading other than unnecessary headaches for their developers.
The first dual-core desktop chips hit the market almost 10 years ago and most applications today still make very little active use of multi-threading. I would not be surprised if it took another decade for a significant chunk of mainstream software developers to get used to writing for threading - even longer if the type of software they write does not really need it.