Kindly, check this paper, it summarizes the approaches that have been suggested in the literature to deal with this problem in cloud computing environments:
Article Type-Aware Virtual Machine Management for Energy Efficient C...
Either containers, VMs, or PMs(physical machine) can be considered as resources.
Performance can be any of: Utilization, Power, SLAV, QoE, Load balancing, responce time, tail latency, throughput, to name but a few.
According to the problem such as "resource provisioning", "VM migration/placement", "web/cloud service composition", "workflow scheduling", etc. agorithms can also be different.
What I'm trying to say is that it is highly depend on the problem that you're talking about.