I don't know if this is possible, since it seems like it'd be pretty tricky, but I was wondering if future versions of Parallels could allow memory to be allocated dynamically. What I mean is, if I set a VM to 512mb, and the copy of Windows XP installed on it is only using 150mb, that Parallels would only be taking 150mb of memory from OSX. I'm on an iMac right now with 1gb of RAM, and memory is getting tight when I run both at once. I can decrease the amount of RAM that my XP VM gets, but then I run into the odd situation where I really need the extra ram in XP. Most of the time the XP VM just sits idle at around 140mb usage.
Hmm, this might be a non-issue. I was confused before since Parallels was reporting 400mb usage on a VM with 384mb of RAM allocated. I just upped it to 512mb and booted windows and its showing around 200mb usage in Activity Monitor on a XP system using 125mb of ram, which although high is not 512mb.
This would be a wonderful feature. Current version of Parallels wires full amount of memory allocted to the guest OS. To see this, open Activity Monitor and open System Memory. Now pay attention to the Wired memory (red). When parallels is started a whole lot of memory is wired. You can also see this if you display the Private memory column.