I can understand why instancing reduces the amount of memory used since you don't duplicate the polygons of your scene, you simply reference them from multiple locations in the scene.
From a technical/hardware point of view (because I guess that's what it's going to come down to), how does it improve render times though? As long as you're not running out of memory without instancing, it shouldn't change anything?
Is it because instancing allows for a better use of the CPU/GPU cache since the exact same memory locations are accessed?