I'm tired so I may have missed it, but your operating system will also need to recognize and support SMP before your application could even see the 2nd processor. DOS, Win9x, etc aren't going to see the 2nd proc; Win2k, Win XP Pro(not Home?) and NT4, plus various Unix/Linux flavors should all see at least 2 processos without a problem. Some version can support more as well.
FWIW, I currently have (3) SMP systems: a 2-way P3-1GHz, a 2-way P3-800MHz, and a 4-way P3-500MHz system. The first processor will typically get hit the hardest since it's also the primary for the operating system.. the others will produce results faster given their lighter load. Memory bandwidth does become more of an issue the more processors you have and the slower the memory. If the power supply that you use in a dual-rig is the same size as what you'd otherwise use in a single processor rig, then yes, there's the benefit of more processing cycles per watt of power used. However, if you don't already have the components for an SMP system, you'd need to consider that added costs of the parts as a factor. 😉
For me, the cost of electricity to run a system has become the deciding factor in using a system. With the exception of the novelty of running a 4-way rig(I've previously owned a 6-way rig), my math has determined 800 MHz to be the slowest processor I'll run, and then only if I have two going per box.
I'd encourage you to get the experience of building and learning about dual-processor systems. You can even have some fun with it with games that support SMP capability like Quake 3, not that any of us would want to waste the cpu cycles. 😛
PS: My project of choice at the moment is "Einstein@Home" but it's currently not open to the public yet. Something to look forward to though as, since it's BOINC-based, it supports multiple processors easily and efficiently. Other projects like Seti@Home, RC5 and Find-a-Drug also support SMP.