You state that you "want to create a volume using my snapshots", so pre-warming by writing data is not a good idea. Instead, you should read the data, which will cause the data to be loaded from the snapshot onto your EBS volume.
From Pre-Warming Amazon EBS Volumes:
When you create any new EBS volume (General Purpose (SSD), Provisioned IOPS (SSD), or Magnetic) or restore a volume from a snapshot, the back-end storage blocks are allocated to you immediately. However, the first time you access a block of storage, it must be either wiped clean (for new volumes) or instantiated from its snapshot (for restored volumes) before you can access the block. This preliminary action takes time and can cause a 5 to 50 percent loss of IOPS for your volume the first time each block is accessed. For most applications, amortizing this cost over the lifetime of the volume is acceptable. Performance is restored after the data is accessed once.
However, you can avoid this performance hit in a production environment by writing to or reading from all of the blocks on your volume before you use it; this process is called pre-warming. Writing to all of the blocks on a volume is preferred, but that is not an option for volumes that were restored from a snapshot, because that would overwrite the restored data. For a completely new volume that was created from scratch, you should write to all blocks before using the volume. For a new volume created from a snapshot, you should read all the blocks that have data before using the volume.
Pre-warming disks (by reading or writing) can take a long time. The bigger the disk, the longer it takes. If possible, avoid pre-warming. Instead, just use it as normal. Worst case is that you will experience slightly slower access when each block is first accessed, which generally isn't a problem (unless you're performing speed tests).
fioshould be faster thanddas it's multi-threaded. - KJH