1. A method for allocating an appropriate server amongst a plurality of servers in a network, the method comprising identifying an application to be executed in a network, wherein the network comprises a plurality of servers configured to execute the application, and each server further comprising a hybrid memory system; determining a group of the application from amongst at least two groups: a first group for applications which are tolerant to reduced performance, and a second group for applications which require a relatively high performance in comparison to the reduced performance; determining which memories of the hybrid memory system are available for executing the application and a power consumption needed for executing the application on each available memory of the hybrid memory system; based on the application to be executed, dynamically identifying one or more resources to execute the application based on all of: the group of the application, which memories of the hybrid memory system are available, an amount of leakage current that would occur during execution of the application for each available memory of the hybrid memory system, and which of the available memories are configured to execute the application with a least amount of power consumption; and dynamically allocating the application to at least one server that has access to the identified one or more resources for execution thereof with the least amount of power consumption.