1. A method for use with a storage system, comprising: in response to writes, creating snapshots of data using a snapshot algorithm; and selecting the snapshot algorithm from among a plurality of different snapshot algorithms according to one or more criteria, wherein selecting the snapshot algorithm from among the plurality of snapshot algorithms according to the one or more criteria comprises selecting the snapshot algorithm from among the plurality of snapshot algorithms according to input variables including at least a first parameter indicating a fraction of a source volume that has been snapped and a second parameter indicating a maximum acceptable response time of the storage system.