The current algorithm always downloads a full memory dump, and extracts the dives afterwards. For the typical scenario where only a few dives are being downloaded, this is inefficient because most of the data isn't needed. This can easily be avoided by downloading the data on the fly.