Virtual machine (VM) placement is a fundamental problem about resource scheduling in cloud computing; however, the design and implementation of an efficient VM placement algorithm are very challenging. To better multiplex and share physical hosts in the cloud data centers, this paper presents a VM placement algorithm based on the peak workload characteristics, which models the workload characteristics of VMs with mathematical method, and measures the similarity of VMs' workload with VM peak similarity. Avoiding virtual machines whose workload has high correlation are placed together, it places the virtual machines with peak workload staggering at different time together, which achieves better VM consolidation through VM peak similarity. This paper focuses on the mathematical analysis of VM peak similarity, and proves that compared to cosinesimilarity method and correlation-coefficient method, peaksimilarity method is better theoretically. Finally, numerical simulations and algorithm experiments show that our proposed peak-similarity-based placement algorithm outperforms the random placement algorithm and correlationcoefficient-based placement algorithm.