1. A method for using remote memory for a number of virtual machines, comprising: sending a number of idle pages to the remote memory according to a placement policy, wherein the placement policy includes a number of weighting factors; and using a hypervisor on a computing device to: record a local size and a remote page fault frequency of the number of virtual machines; scan local memory to determine the number of idle pages and a number of idle virtual machines; send to the remote memory a page map and a remote address destination for each of the number of idle pages sent to the remote memory; and analyze the number of virtual machines to determine a per-virtual machine local memory allocation.