Given the buffer size of 4k, if we were downloading at 16Mbps (pretty conservative, as my phone has more throughput over 4G), we would update the progress report 512 times per second. Now imagine a local sync happening on a gigabit link. Perhaps we should find a way to update the report less frequently.