Using extra CPU time in ESXI for scientific computing
Solution 1:
You could use resource pools to reduce the priority of the idle VMs. The idle group can have CPU shares set to low. Add VMs to the idle pool, each with vCPU set to the number of cores per socket, until the load is what you want.
Further, DRS and/or DPM can consolidate workloads on hosts. Although if you are licensed for all that, you also can have DPM just vacate and shut down idle hosts.