That's kinda of what it seems like to me, the main window of my unraid setup shows that I'm using 358 gb storage on the cache array, but when I break out the handy calculator, just vdiscs show that i should be using 376... not including everything in the user shares. (which should be upwards of another 125+), so I'm "using" 501 (yay napkin math) but have 140g free of 498. I'd say that a good combination of reflink and symlinks are at work! In layman's terms, looks like it makes a snapshot, and allocates a very little bit of space to hold it's snapshotty goodness... and any changes to that snapshot file actually increase the space used by that snapshot.
So VM, 30 gig (doing it with qcow2 saves a ton of space, and I've not seen any performance difference between raw and that... ymmv), get it set up... snapshot a few times, VMStorage1.qcow2, 2, 3, 4... use those in your vms... and you've used like 45 gigs instead of 120 at the start AND your original is intact. *boggles* So, if you're planning on using this for a games library or the like, update the original (or a snapshot for that matter) snapshot again 1234, attach new snapshotted vdiscs to your vms, profit. Still low space usage.
Question for any of you gurus out there -- I suppose this doesn't work if the original is on your regular magnet array, does it? It would probably make a copy of the file to the cache and use the space like if the original was deleted... that would just be a-maze-ing if it worked like that