Maybe swap space should simply be max(4GB, $PhysicalMemory). Actually, isn't 'swap to filesystem' still an option? if so, maybe swap should be a constant 4GB, and hibernation should create an appropriately sized file on the fly, join it to the swap and use both.I think it should be other way around: swap partition big enough to hibernate, i.e. the size of RAM, and a dynamnically sized swap file if more swap space is needed for non-hibernation data.