10 research outputs found
Addressing the feasibility of USI-based threads scheduler on polymorphic computing system
The consistent advances in IC technology result in ever increasing number of transistors. There is more and more interest attracted on the issue of using these transistors in computing more efficiently. The CMP (Chip Multi &ndash processors) is predicted to be one of the most promising solutions for this problem in future. The heterogeneous CMP is supposed to provide more computing efficiency compared to the homogeneous CMP architecture; but it requires complex processing art for manufacturing, which makes it less competitive in the old era. Nowadays, the complicate SOC(System On Chip) manufacturing techniques are pacing fast. This is leading us inexorably to heterogeneous CMP with diverse computing style resources like general purpose CPU, GPU, FPGA, and ASIC cores. In the heterogeneous CMP architecture, the generous purpose CPU provides coverage for all computing, while the non von &ndash Neumann cores harvest energy and processing time for specific computing.
The polymorphic system is defined as a heterogeneous system that enable a computing thread to be dynamically selected and mapped to multiple kinds of cores. A polymorphic thread is compiled for multiple morphisms afforded by these diverse cores. The resulting polymorphic computing systems solve two problems. (1) Polymorphic threads enable more complex, dynamic trade &ndash offs between delay and power consumption. A piecewise cobbling of multiple morphism energy &ndash delay profiles offers a richer Energy &ndash Delay(ED) profile for the entire application. This in turn helps scale the proverbial ITRS &rdquo red &ndash brick power wall &rdquo. (2) The OS scheduler not only picks a thread to run, it also chooses its morphism. Previously, the scientists and engineers prefer using the numerical E · T results to evaluate the design trade &ndash offs, which is challenged to not fit on the future mobile systems design in this thesis. In the mobile systems, whose primary role is &ldquo enhanced terminals &rdquo &ndash user interface to cloud hosted computing backbone, user satisfaction ought to be the primary goal. We propose a scheduler to target User Satisfaction Index (USI) functions. In this thesis, we develop a model for a mobile polymorphic embedded system. This model primarily abstracts the queuing process of the threads in the OS operation. We integrate a polymorphic scheduler in this model to assess the application design space offered by polymorphic computing. We explore several greedy versions of a polymorphic scheduler to improve the user satisfaction driven QoS. We build a polymorphic system simulation platform based on SystemC to validate our theoretical analysis of a polymorphic system. We evaluate our polymorphic scheduler on a variety of application mix with various metrics. We further discuss the feasibility of USI &ndash based polymorphic scheduler by identifying its strengths and weaknesses in relation to the application design space based on the simulation results
HAPPE: Human and Application-Driven Frequency Scaling for Processor Power Efficiency
Abstract-Conventional dynamic voltage and frequency scaling techniques use high CPU utilization as a predictor for user dissatisfaction, to which they react by increasing CPU frequency. In this paper, we demonstrate that for many interactive applications, perceived performance is highly dependent upon the particular user and application, and is not linearly related to CPU utilization. This observation reveals an opportunity for reducing power consumption. We propose Human and Application driven frequency scaling for Processor Power Efficiency (HAPPE), an adaptive user-and-application-aware dynamic CPU frequency scaling technique. HAPPE continuously adapts processor frequency and voltage to the learned performance requirement of the current user and application. Adaptation to user requirements is quick and requires minimal effort from the user (typically a handful of key strokes). Once the system has adapted to the user's performance requirements, the user is not required to provide continued feedback but is permitted to provide additional feedback to adjust the control policy to changes in preferences. HAPPE was implemented on a Linux-based laptop and evaluated in 22 hours of controlled user studies. Compared to the default Linux CPU frequency controller, HAPPE reduces the measured system-wide power consumption of CPU-intensive interactive applications by 25 percent on average while maintaining user satisfaction. Index Terms-Power, CPU frequency scaling, user-driven study, mobile systems Ç 1I NTRODUCTION P OWER efficiency has been a major technology driver for battery-powered mobile systems, such as mobile phones, personal digital assistants, MP3 players, and laptops. Power efficiency has also become a new focus for line-powered desktop systems and data centers because of its impact on power dissipation and chip temperature, which affect performance, reliability, and lifetime. Processor power consumption is often a substantial portion of system power consumption in mobile systems Traditional CPU power management approaches can lose sight of an important fact: The ultimate goal of any computer system is to satisfy its users, not to execute a particular number of instructions per second. Although CPU utilization is a good indication of processor performance, the actual perceivable system performance depends on individual users and applications, and user satisfaction is not linearly related to CPU utilization. We conducted a study on 10 users with four interactive applications and found that for some applications, some users are satisfied with system performance when the processor is at the lowest frequency, while other users may not be satisfied even when it operates at the highest frequency. We also found that users may be insensitive to varying processor frequency for one application, but may be very sensitive to such changes for another application. Traditional DVFS policies that consider only CPU utilization or other useroblivious performance metrics are often too pessimistic about user performance requirements, and use a high frequency to satisfy all users, resulting in wasted power. Similar findings were also reported in other studies In this paper, we propose Human and Application driven frequency scaling for Processor Power Efficiency (HAPPE), a CPU DVFS technique that adapts voltage and frequency to the performance requirement of the curren
Recommended from our members
Predictive power management for multi-core processors
textEnergy consumption by computing systems is rapidly increasing due to the growth of data centers and pervasive computing. In 2006 data center energy usage in the United States reached 61 billion kilowatt-hours (KWh) at an annual cost of 4.5 billion USD [Pl08]. It is projected to reach 100 billion KWh by 2011 at a cost of 7.4 billion USD. The nature of energy usage in these systems provides an opportunity to reduce consumption.
Specifically, the power and performance demand of computing systems vary widely in time and across workloads. This has led to the design of dynamically adaptive or power managed systems. At runtime, these systems can be reconfigured to provide optimal performance and power capacity to match workload demand. This causes the system to frequently be over or under provisioned. Similarly, the power demand of the system is difficult to account for. The aggregate power consumption of a system is composed of many heterogeneous systems, each with a unique power consumption characteristic.
This research addresses the problem of when to apply dynamic power management in multi-core processors by accounting for and predicting power and performance demand at the core-level. By tracking performance events at the processor core or thread-level, power consumption can be accounted for at each of the major components of the computing system through empirical, power models. This also provides accounting for individual components within a shared resource such as a power plane or top-level cache. This view of the system exposes the fundamental performance and power phase behavior, thus making prediction possible.
This dissertation also presents an extensive analysis of complete system power accounting for systems and workloads ranging from servers to desktops and laptops. The analysis leads to the development of a simple, effective prediction scheme for controlling power adaptations. The proposed Periodic Power Phase Predictor (PPPP) identifies patterns of activity in multi-core systems and predicts transitions between activity levels. This predictor is shown to increase performance and reduce power consumption compared to reactive, commercial power management schemes by achieving higher average frequency in active phases and lower average frequency in idle phases.Electrical and Computer Engineerin
Polymorphic computing abstraction for heterogeneous architectures
Integration of multiple computing paradigms onto system on chip (SoC) has pushed the boundaries of design space exploration for hardware architectures and computing system software stack. The heterogeneity of computing styles in SoC has created a new class of architectures referred to as Heterogeneous Architectures. Novel applications developed to exploit the different computing styles are user centric for embedded SoC. Software and hardware designers are faced with several challenges to harness the full potential of heterogeneous architectures. Applications have to execute on more than one compute style to increase overall SoC resource utilization. The implication of such an abstraction is that application threads need to be polymorphic. Operating system layer is thus faced with the problem of scheduling polymorphic threads. Resource allocation is also an important problem to be dealt by the OS. Morphism evolution of application threads is constrained by the availability of heterogeneous computing resources. Traditional design optimization goals such as computational power and lower energy per computation are inadequate to satisfy user centric application resource needs. Resource allocation decisions at application layer need to permeate to the architectural layer to avoid conflicting demands which may affect energy-delay characteristics of application threads. We propose Polymorphic computing abstraction as a unified computing model for heterogeneous architectures to address the above issues. Simulation environment for polymorphic applications is developed and evaluated under various scheduling strategies to determine the effectiveness of polymorphism abstraction on resource allocation. User satisfaction model is also developed to complement polymorphism and used for optimization of resource utilization at application and network layer of embedded systems
User experience driven CPU frequency scaling on mobile devices towards better energy efficiency
With the development of modern smartphones, mobile devices have become ubiquitous
in our daily lives. With high processing capabilities and a vast number of applications,
users now need them for both business and personal tasks. Unfortunately, battery technology
did not scale with the same speed as computational power. Hence, modern
smartphone batteries often last for less than a day before they need to be recharged.
One of the most power hungry components is the central processing unit (CPU). Multiple
techniques are applied to reduce CPU energy consumption. Among them is dynamic
voltage and frequency scaling (DVFS). This technique reduces energy consumption
by dynamically changing CPU supply voltage depending on the currently running
workload. Reducing voltage, however, also makes it necessary to reduce the clock
frequency, which can have a significant impact on task performance. Current DVFS
algorithms deliver a good user experience, however, as experiments conducted later in
this thesis will show, they do not deliver an optimal energy efficiency for an interactive
mobile workload. This thesis presents methods and tools to determine where energy
can be saved during mobile workload execution when using DVFS. Furthermore, an
improved DVFS technique is developed that achieves a higher energy efficiency than
the current standard.
One important question when developing a DVFS technique is: How much can you
slow down a task to save energy before the negative effect on performance becomes
intolerable? The ultimate goal when optimising a mobile system is to provide a high
quality of experience (QOE) to the end user. In that context, task slowdowns become
intolerable when they have a perceptible effect on QOE. Experiments conducted in
this thesis answer this question by identifying workload periods in which performance
changes are directly perceptible by the end user and periods where they are imperceptible,
namely interaction lags and interaction idle periods. Interaction lags are the time
it takes the system to process a user interaction and display a corresponding response.
Idle periods are the periods between interactions where the user perceives the system
as idle and ready for the next input. By knowing where those periods are and how
they are affected by frequency changes, a more energy efficient DVFS governor can be
developed.
This thesis begins by introducing a methodology that measures the duration of interaction
lags as perceived by the user. It uses them as an indicator to benchmark the
quality of experience for a workload execution. A representative benchmark workload
is generated comprising 190 minutes of interactions collected from real users. In conjunction
with this QOE benchmark, a DVFS Oracle study is conducted. It is able to
find a frequency profile for an interactive mobile workload which has the maximum
energy savings achievable without a perceptible performance impact on the user. The
developed Oracle performance profile achieves a QOE which is indistinguishable from
always running on the fastest frequency while needing 45% less energy. Furthermore,
this Oracle is used as a baseline to evaluate how well current mobile frequency governors
are performing. It shows that none of these governors perform particularly well
and up to 32% energy savings are possible. Equipped with a benchmark and an optimisation
baseline, a user perception aware DVFS technique is developed in the second
part of this thesis. Initially, a runtime heuristic is introduced which is able to detect
interaction lags as the user would perceive them. Using this heuristic, a reinforcement
learning driven governor is developed which is able to learn good frequency settings
for interaction lag and idle periods based on sample observations. It consumes up to
22% less energy than current standard governors on mobile devices, and maintains a
low impact on QOE