I've always manually backed up my VM (hdd and all) to external drives. That process takes about 15 minutes it seems to copy. When snap shots came out I figured on giving them a try. My VM is WINXP with 640mb of RAM allocated and a 20gb disk. I created a few snap shots of various events and decided I wanted to remove some of the older ones... I kid you not... on my MBP 2.16 ghz with 2gb of RAM removing a single snap shot takes close to 5 minutes of spinning beach ball time!!! It seemed not to matter if it was the head snap shot or the tail or one in the middle. It's so slow frankly it's unusable. Edit: It's going on close to 10 minutes to delete the last one...
Ok I timed the last snapshot delete... 14 minutes!!! During this time Parallels was unusable (it grays out the VM) AND it slowed the mac down to a crawl. Strangely CPU was only 24% during all of this but things were SLOW!!! I'm never using snapshots again! I'll continue to do my own using copies to external drive. M
I have written a bit about how this works in this post. What I forgot to mention though is that the "You Are Here" marker counts as a snapshot in this context. If you delete a snapshot with *nothing* connected to it, not even the "You Are Here" marker, then the delete should hardly take any time at all. Otherwise the snapshot(s) connected to the snapshot you are deleting have to be merged down, and that could take a while.
Brkirch, My snap shots were totally flat IE: begin --- A --- B --- C --- You are here Deleting A took 10+ minutes. Deleting B took 14 minutes. I am too scared to delete C. It is surprising to me that suspend/resume of the VM which basically as I can see it saves 640mb in my case in a matter of 8-15 seconds is so much faster than an operation which seems like it would do much the same thing. I can see your point in the documentary post about merging but this was not the case in my example. It as you say should have been very quick. It is pretty fast to make a snap shot but horrible to delete one. I never even tried to go back to one. Hugh, that is what I do. I copy the entire VM folder to external disks trying to make sure I have several operable copies available. This process saved my butt the just yesterday when after letting WinXP auto-install updates the VM would not boot. Restore the backup and it was up and running. I just wish copying my 30gb VM back and forth to FW disks was a little faster. It takes about 12 minutes to do. M
That is your problem though; you are deleting snapshots with "You Are Here" attached to them. If you revert to snapshot A in the diagram you posted then deleting C then B would be instantaneous and only deleting A would take any time. Otherwise there is no way around it because the snapshots store changes only (including the "You Are Here" marker) and any directly attached snapshots have to merged down when one is deleted.
Ok I guess I don't really understand the implementation they have done. As far as it being my problem I don't agree. My use is pretty much what I would think most people would use. IE ok I'm about to make a change, lets do a new snapshot. Then at some point in time delete old ones. I'm a programmer by trade and have done some applications in the past that dealt with pretty large data files that required merging. I never had one take 14 minutes. Well regardless it is unusable in its current implementation for my purposes (and probably many others as well). Thanks for taking the time to reply though. M
Sorry, I didn't mean it was your problem I meant that is why you are having that problem. And yes the implementation could probably be improved, just like the virtual disk compacting algorithm seems to be greatly improved in the latest update.
Exactly my thoughts and uses for Snapshots. I know VMWare snapshots do not have the same limitations and delete quickly. Hopefully, this will be resolved in the future.
I understand that deleting snapshots that are connected to "you are here" can't be deleted instantly, but must be merged down. However, I don't understand why this merging process is that incredibly slow. I have a 20G C drive, and made a single snapshot a while ago. In the meantime, the delta file containing the changes is around 9G. So the merging down consists of writing those 9G back to the 20G main file. I'd understand if it took half an hour - but it's now almost 2 hours since i started it and it is still not finished (but not crashed, I hear the disk being accessed constantly). I have plenty of RAM free (around 1G), CPU load is at mere 14% for Parallels. Data I/O goes up and down between 1MB/sec up to 5MB/sec, more or less parallel for read and write. That's not really fast, at an average of 2MB/sec those 9 Gigs will take 9000/2 = 4500 secs and that's one and a half hour, so no surprise here. But why is the I/O so slow? The troughput of the disk is around 40MB/sec. It seems that the access pattern is really unfortunate. I also have the impression that if Parallels is not in the foreground while merging, it will slow down even more. But now, while writing this and after a good 2 and a half hours now, the snapshot is deleted. FINALLY
Ya... they are doing something funky and it looks to me like they really didn't think through their data structures and the merge process... It is simply unusable to me. I ended up buying a 250g external, writing some AppleScripts/Automator scripts to simply keep track of backups on that external disk. Space is luxury... With 250g I can have about 5 full backups of my VM in various states at any one time. I love it.
Has anyone tried this the deleting on a real desktop machine? I might give it a try on my server if no one else has... Just to see what would happen.