“…This expression of wants and needs builds upon what can be expressed through today's simple counts of virtual machines or amounts of storage, to encompass the specific characteristics of specialized technologies; • HARNESS supports the automatic generation of performance models that guide the selection of well-chosen sets of resources to meet application requirements and service-level objectives. We developed several techniques to reduce the profiling effort of generic applications, including the use of monitoring resource utilization to generate higher-quality performance models at a fraction of time [25], as well as extrapolating production-size inputs using smaller sized datasets; • HARNESS is designed to be resilient to heterogeneity. We developed a multitier infrastructure system, such that the top level management can perform operations with different levels of agnosticism, so that introducing new types of resources and tailoring a cloud platform to target specialized hardware devices does not lead to a complete redesign of the software architecture and/or its top-level management algorithms; • The various resource managers that make up the HARNESS infrastructure are governed by a single API specification that handles all types of resources uniformly.…”