Mechanisms for efficiently restoring one or more memory blocks of a
primary computing system. In order to restore a backup memory block, the
primary system accesses transformed data that represents a result of a
deterministic many-to-one mapping function, such as a hash function,
applied to the backup memory block. The primary computing system also
accesses transformed data that represents a result of the deterministic
many-to-one mapping function applied to a corresponding primary memory
block as the memory block exists on the primary system. The primary
transformed data and the backup transformed data are then compared. If
the primary and backup transformed data are different, the corresponding
primary and backup memory blocks are also different. Accordingly, the
primary computing system requests the full memory block from the backup
computing system.