ContextThe energy consumption of mobile devices is increasing due to the improvement in their components (e.g., better processors, larger screens). Although the hardware consumes the energy, the software is responsible for managing hardware resources such as the camera software and its functionality, and therefore, affects the energy consumption. Energy consumption not only depends on the installed code, but also on the execution context (environment, devices status) and how the user interacts with the application.Objective In order to reduce the energy consumption based on user behavior, it is necessary to dynamically adapt the application. However, the adaptation mechanism also consumes a certain amount of energy in itself, which may lead to an important increase in the energy expenditure of the application in comparison with the benefits of the adaptation. Therefore, this footprint must be measured and compared with the benefit obtained.Method In this paper, we (1) determine the benefits, in terms of energy consumption, of dynamically adapting mobile applications, based on user behavior; and (2) advocate the most energy-efficient adaptation mechanism. We provide four different implementations of a proposed adaptation model and measure their energy consumption.
ResultsThe proposed adaptation engines do not increase the energy consumption when compared to the benefits of the adaptation, which can reduce the energy consumption by up to 20%.
ConclusionThe adaptation engines proposed in this paper can decrease the energy consumption of the mobile devices based on user behavior. The overhead introduced by the adaptation engines is negligible in comparison with the benefits obtained by the adaptation.
In the last few years, the number of devices connected to the Internet has increased considerably; so has the data interchanged between these devices and the Cloud, as well as energy consumption and the risk of network congestion. The problem can be alleviated by reducing communication between Internet-of-Things devices and the Cloud. Recent paradigms, such as Edge Computing and Fog Computing, propose to move data processing tasks from the Cloud to nearby devices to where data is produced or consumed. One of the main challenges of these paradigms is to cope with the heterogeneity of the infrastructures where tasks can be offloaded. This paper presents a solution for the optimal allocation of computational tasks to edge devices, with the aim of minimizing the energy consumption of the overall application. The heterogeneity is represented and managed by using Feature Models, widely employed in Software Product Lines. Given the application and infrastructure configurations, our Optimal Tasks Assignment Framework generates the optimal task allocation and resources assignment. The resultant deployment represents the most energy efficient configuration at load-time, without compromising the user experience. The scalability and energy saving of the approach are evaluated in the domain of augmented reality applications.
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.