As enterprises migrate more and more mission critical workloads to the cloud, the performance of a cloud computing system becomes increasingly important. The traditional method of pre-copying virtual machine images to hypervisors before VMs are booted results in long provisioning delays. On-demand streaming of virtual disks is used to speed up the provisioning but it may result in application runtime performance penalty. This paper seeks to quantify the runtime performance when using on-demand streaming through an empirical study. We have studied three representative application workloads: I/O micro-benchmarks, transactional application and Big Data. Two streaming protocols, NFS and iSCSI, are used in conjunction with two Copy-on-Write schemes, qcow2 from QEMU and dm-snapshot from Linux Device Mapper. We have also investigated the impact of page caching at hypervisor level on application runtime performance. The results show that I/O micro-benchmarks and transactional workload perform equally well with on-demand streaming as with pre-copied local virtual disks, while Big Data workload such as Hadoop sees a performance degradation up to 16%. We hope this study can provide insights into the performance aspect of various streaming technologies and offer guidelines to cloud operators and end users in implementing them. © 2012 ACM.