1. A method for managing resources for a first application comprising a distributed computing application, the method comprising: receiving a first performance metric for a host computer having a first plurality of virtual machines (VMs) controlled by the distributed computing application and a second plurality of VMs controlled by a second application separate from the distributed computing application; determining a state of resource contention between the distributed computing application and the second application based on the first performance metric, wherein it is determined that there is no state of resource contention if VMs controlled by the distributed computing application are primary contributors to the first performance metric; modifying an allocation of task slots associated with the host computer based on the first performance metric, wherein each task slot represents a capability to receive a unit of work for the distributed computing application; and transmitting the modified allocation of task slots to a scheduler, wherein the scheduler is configured to assign a plurality of tasks to be executed in the first plurality of VMs controlled by the distributed computing application based on the modified allocation of task slots.