Naive Path Tracing with 64 samples per pixel
Bi-Directional Path Tracing with 32 samples per pixel
Here I am comparing the results of naive path tracing (top) with bi-directional path tracing (bottom). The later gives much better results at almost half the number of samples per pixel. Check the reflections on the spheres.