The speed ups come as the complexity of the scene in the real time viewport increases. Blender was still using immediate mode, which is sending the vertices, uvs, normals, and etc, one at a time from the CPU to the GPU to draw. That's function 3-9 (or more) calls per polygon. That's lots of needless function call overhead…