1. A computer-implemented method for placement of a plurality of virtual machines, comprising: assigning, to a hardware resource, a plurality of candidate virtual machines selected from the plurality of virtual machines; generating a user location vector for each candidate virtual machine from the plurality of candidate virtual machines by aggregating a plurality of user location metrics for each candidate virtual machine; ranking, in response to a performance resource demanded by the plurality of candidate virtual machines being at or above a threshold of the performance resource available on the hardware resource, the candidate virtual machines as a function of an aggregate user location vector for each candidate virtual machine; selecting a subset of the candidate virtual machines for migration based on the ranking; and migrating, responsive to the selecting, the subset of candidate virtual machines to the hardware resource.