I had the same question very recently. Maru explained it to me. From what I've learned and utilized it for is "hiding" high detail objects, for eg. hair and fur. It doesn't really hide it like max does though, it's still there, but it's appearance changes. You can either cache it in your RAM or save it as a separate file on your HDD and it only gets called at the render. You can set different display options for it, like bounding box, point cloud, or even it's full geometry. And yes, it speeds up viewport.
EDIT: It actually saves it to HDD by default. When you select the file for the proxy it asks you for a save location. The cache in RAM is an extra option.