The SSD boom and the theoretical multicore revolution
For quite a while now, CPU vendors have been trying to persuade people to spend a great deal of money recoding applications to run on heavily multicore CPUs so that the CPU vendors could continue to sell expensive new CPUs (to put it one way). The motivation CPU vendors offer is that if you don't make the investment, system performance can't increase any more and then the wheels come off everyone's wagon, not just theirs.
Now consider the current SSD boom. Pretty much everyone agrees that one of the best ways to improve your system right now is to replace your hard drive with an SSD; for most people, their system becomes a lot more responsive and any number of things that they do get faster in practice. There are a lot of SSDs that are going to be sold in the next few years, and they will improve a lot of systems much more significantly than most CPU upgrades do.
Replacing hard drives with SSDs is only one of quite a few practical performance improvements waiting in typical systems. A lot of PC components have basically been put on the back burner for the past while in favour of chasing ever faster CPU speeds, sometimes to absurd degrees both in theory (just look at how much faster CPUs are than memory) and in practice (even before SSDs, one of the best performance improvement many people could make was not a faster CPU but more memory). Now improvements to these other components are a fruitful source of overall system performance improvements (and thus sales) for system vendors, even if this leaves the CPU vendors in the cold.
It gets worse. The blunt unfortunate truth for CPU vendors is not just that both software firms and system manufacturers have options for selling upgrades, but that more and more people do not need more CPU power at all. It is hard to sell more CPU to someone who is already not using all of the one that they have, and knows it.