With the growing importance of the cloud computing paradigm, it is a challenge for cloud providers to keep the operational costs of the data centers in check, especially in the emerging markets, alongside catering to the customers' needs. It becomes essential to increase the operational efficiency of the data centers to be able to maximize VM (Virtual machine) offerings at minimal cost. To that end, energy-efficiency of the servers plays a critical role, as they influence the electrical and the cooling costs which constitute a major part of the total cost involved in the operation of a data center.Power-savings can be achieved at several different levels in a system: processors, memory, devices, and system-wide (involving powering down multiple components of a host all at once). At the processors level, depending on the workload trends, we can exploit technologies like DVFS (Dynamic Voltage and Frequency Scaling) or P-states when the CPU is running, and CPU sleep states (C-states) when the CPU is idle, to save power. Memory standards such as DDR3 have provisions for putting idle memory banks into low-power states. At the devices level, individual devices can be put into low-power states, controlled and coordinated by a run-time power management framework in the Operating System.This paper outlines the state-of-the-art in power-management technology on server hardware and describes how these raw features can be abstracted into a set of energy policies. We then explain how these policies or energy-profiles can be used to run a cloud datacener energy efficiently. Further, this paper also highlights some of the challenges involved in running cloud infrastructures in the emerging markets optimally despite some unique energy constraints.
Modern multi-core, multi-socket hardware powering the "cloud" is designed with memory and cache resources that have local associativity to a group of cores. Operating systems have characterized these associativities as part of NonUniform Memory Architecture (NUMA) optimizations within their virtual memory manager (VMM) and scheduler which improves application performance.Mature NUMA optimizations are prevalent for an OS running on bare-hardware. However, their benefits are reduced within virtual machines(VM) in the cloud. Even though cloud applications are executed by standard multi-core multi-socket hardware, the abstraction brought in by the virtualization layer makes it challenging to optimize resource management within a VM. This paper describes new paradigms in hypervisor technologyscheduling VMs on cores and managing their memory resources which streamlines their execution on underlying multicore hardware. Being Linux kernel developers, we base our work on Linux operating system and Kernel Virtual Machine (KVM) -a subsystem which turns the Linux kernel into a scalable hypervisor.We evaluate few approaches for optimal resource allocation with KVM. We summarize our findings with a comparative study of how different scheduling algorithms can be employed with KVM for various systems to support efficient resource placement while running cloud workloads.
No abstract
Centralized power management control systems are hitting a scalability limit. In particular, enforcing a power cap in a many-core system in a performance-friendly manner is quite challenging. Today’s on-chip controller reduces the clock speed of compute domains in response to local or global power limit alerts. However, this is opaque to the operating system (OS), which continues to request higher clock frequency based on the workload characteristics acting against the centralized on-chip controller. To address these issues, we introduce TokenSmart, which implements a set of scalable distributed frequency control heuristics within the OS, using a novel token-based mechanism. The number of system-allocated power tokens represents the maximum allowable power consumption; and the OS governor orchestrates a token-passing (or sharing) algorithm between the compute engines. Token allocation count increase (decrease) corresponds to a increase (decrease) of clock frequency. The compute units are connected in a ring-topology allowing minimal meta-data to be passed along with the token value for regulating power budget. We explore different heuristics to assign tokens smartly across the units. This results in efficient power regulation and sustenance of turbo frequencies over a longer duration. Our proposed methodology can be implemented in hardware with multiple on chip controllers, or in software where each set of cores act as a compute unit. The methodology is currently implemented within the Linux kernel of a real IBM POWER9 many-core system and experimentally verified on different real world workloads such as Redis, Cassandra, PostgreSQL along with a micro-benchmark such as rt-app. Our experiments indicate the increase in throughput for all the workloads along with the benefit of power savings. For instance, results show a considerable boost of about 4% in throughput of both the PostgreSQL and Redis benchmark with a substantial savings in power consumption (18% and 37% respectively). If the approach is implemented in hardware, our experimental analysis speculates the throughput to increase up to 14% in PostgreSQL benchmark.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.