A realtime water shader will cost quite some fps, no matter what shader it uses. The main problem is indeed the use of rendering the view more than once, simply to get the true reflections. If you want better fps, you're better off using the fake reflections shader. On my graphics card the hit on fps is little to nothing with Sylex, and with Sphere(demo) is a little bit slower, but still no big hit on the fps.
Cheers