AHB Advanced High-performance Bus. System bus definition within the AMBA 2.0 specification.Defines a high-performance bus including pipelined access, bursts, split, and retry operations. DVFS Dynamic Voltage and Frequency Scaling. Group of algorithms that change voltage and frequency at runtime according to workload to make a trade-off between performance and energy consumption DDR Double Data Rate memory. DDR refers to a specific type of dynamic memory technology, which is synonymous with the dynamic memory used as the global (volatile) memory in computing elements. DOU Days Of Use. For a mobile device, the length of the time from a full battery (re)charge to when the battery dies and requires another recharge. It is often used by different vendors with a predefined set of dashboard tests they use to define their target energy consumption requirements. These requirements are used to drive the design, measure the success of the design, and compare competing designs and platforms. CPU Central Processing Unit. GPU Graphics Processing Unit. GPGPU General-Purpose computing on GPU. There are a number of general-purpose (nongraphics) applications that can benefit significantly from the parallelism offered by graphics processors in terms of performance. GPGPU refers to the concept of running general-purpose (nongraphics) applications on GPUs. OPP Operating Performance Point. A unique permutation of all the frequency domains controlled by DCVS. In this thesis, it refers to the (GPU,DDR) frequency pair. IC Integrated Circuit. PMIC Power Management Interface Controller. The component within of a digital electronic chipset that controls the power distribution and protects the circuit from permanent damage, or data corruption due to voltage droop. It is also in charge of optimizing power distribution to increase battery efficiency. IoE Internet of Everything. IoT Internet of Things. SoC System on a Chip. Refers to the integration of multiple different electronic elements including processors and memories on a single chip in a single fabrication process API Application Programming Interface. A set of well-defined functions that specify the interface of a library with other software components. External components and interact with and use the library by calling its API functions. API only specifies the format of the functions and their behavior as seen by outside entity. It does not expose internal implementation of those behaviors.ix UMD User Mode Driver. A device driver that runs in user-mode in the operating system and acts as the interface between an application and a device driver. IO Input/Output. ADB Android Debug Bridge. Set of command line tools available for the Android operating system, which are used for debugging android operating system and applications. ADB is also used for automation tasks such as starting and stopping applications.