Does OpenCL automatically use all GPUs in my system? Through dumb luck, I've ended up with 3 OpenCL-capable graphics card in my Mac.  I even ran the little "list all your OpenCL devices" sample program from Apple, and it lists all of them.

Do programs that use OpenCL automatically use all OpenCL devices that are available to the system, or is it like CPUs (prior to GCD) where programs needed to be explicitly written to use multiple devices?
I've had a lot of trouble running OpenCL drivers both on Mountain Lion and Maverics. 

The answer to your question is that programs need to be explicitly written to use multiple devices.

However how the cards are used depends on what you are using them for.  If you are trying bitcoin mining ... well then, that is where I ran into issues. If you are using your cards for what they are designed to do the drivers may behave differently.