Name of the option tells something but what Visual Studio/compiler really do and what are the real consequences?
Edit: If you search google you can find this address
The short answer is: use -Ox and let the compiler do its job.
The long answer: the effect of different kind of optimizations is impossible to predict accurately. Sometimes optimizing for fast code will actually yield smaller code than when optimizing for size. If you really want to get the last 0.01% of performance (speedwise or sizewise), you have to benchmark different combination of options.
Also, recent versions of Visual Studio have options for more advanced optimizations such as link-time optimization and profile-guided optimization.