Software optimization for the green internet of things
The United Nations' 2030 Agenda sets specific goals for sustainable development, including the reduction of carbon footprint. The rapid growth of Internet of Things devices, characterized by limited computational resources, along with the high energy demands of the video game industry (estimated between 230 TWh and 347 TWh annually), has intensified the need for tailored software optimization techniques. In this context, green software emerges as a key component for improving the sustainability of information systems, software whose resource usage has been optimized throughout its entire life cycle. This doctoral thesis aims to generate knowledge about the impact of code optimizations across diverse combinations of software and hardware, as well as to develop new methodologies for the automatic optimization of program performance. To this end, it presents a novel framework for the automatic optimization of software programs for specific hardware architectures, which considers three different objectives: runtime, energy consumption, and resource usage. Accordingly, three new combinatorial optimization problems are mathematically formulated (one for each objective), and solved using genetic algorithms and code transformations from the LLVM infrastructure. Additionally, uncertainty in software performance measurements during the optimization process is explicitly taken into account. The obtained results show significant improvements over the non-optimized versions: reductions of up to 63.20% in runtime, 58.21% in energy consumption, and an increase in gaming frame rate of up to 274.14%. Moreover, during the development of the doctoral thesis, the different optimization techniques were also applied in parallel to other dimensions of sustainability, such as sustainable public transport and software protection. This research contributes to the advancement of a new generation of smart compilers capable of automatically adapting software to the characteristics and constraints of modern hardware, thus promoting the development of more sustainable and greener solutions. In doing so, it not only enhances performance but also actively promotes the creation of more sustainable and efficient technological solutions, aligned with the demands of the digital future.
Networked Digital Library of Theses and Dissertations