Efficient Virtual Machine (VM) provisioning and allocation allows the cloud providers to effectively utilize their available resources and obtain higher profits. Existing combinatorial auction-based mechanisms assume that the VM instances are already provisioned, that is they assume static VM provisioning. A better solution would be to take into account the users' demand when provisioning VM instances. The authors design an auction-based mechanism for dynamic VM provisioning and allocation that takes into account the user demand for VMs when making VM provisioning decisions.