hi there, and welcome to the forums ...
i just bought a new gpu .... one by ati, in fact, i bought the 6870HD because it has in my eyes best price/value at the moment, and it has amazingly 2TFLOPS of calculating power
so, my advice for gpu programming is, DO NOT TOUCH ANY PROPRIETARY STUFF (NVIDIA:CUDA,PHYSX ATI:STREAM ) , because if you switch manufacturers, it might happen that your code doesnt run ... as i did it right now, the nvidia gpus suffer from gflops, the best and most expensive card of nvidia just manages to get 1,5tflops out ....
i would recomend you use OpenCL ( if you want calculating stuff ) or you use OpenGL ( GLSL ) for your code, this way you are independent of manufacturers, if you like you could
also use directx ( HLSL ) but this way you would yourself limit to only windows platform ...
and for the double precision ... my thought was ... i want to do REALTIME stuff, but as you know the fractals tend to get extraordinary complex when it goes down ( >250 iterations )
and when using double ... you would loose the realtime, at least with nowadays hardware, so, i choosed a single precision GPU but with massive GFLOPS available, so that realtime
zooming on single precision floating point will always be smooth

...