Category: Research

  • Digital Technologies and Global Warming

    Digital Technologies and Global Warming

    The modern challenges of technological progress

    Since the beginning, humankind found in technology an ally to overcome the limits that the environmental conditions were posing to its evolution. Technological progress had determined the rise and the dawn of ages and it is now shaping the digital era, where the algorithms and the electronic devices are the core components of innovation. The digital products are supporting the different industries, reducing the time to market of the products and streamlining all the repetitive and tedious operations that were once weighing on the shoulders of the operators. The digital era is a new opportunity for humankind to achieve what was unachievable until 50 years ago: automatized production lines through IoT, big data processing for tailored products, enhanced customer experience based on AI. The IoT and Cyber-Physical Systems are two of the main technologies introduced by Industry 4.0 with the objective of optimising the production process to reduce the spare parts and the risks for the human operators. While Industry 4.0 is accelerating the industrial processes, the next step, Industry 5.0, will save the time wasted in data transfer and enhance the collaborative frameworks of the supply chain. However, it is the nature of time that the new ages always come with new challenges. In fact, while we are entering the digital era, these contemporary issues are slowly taking shape. Climate change is becoming of supreme importance among the priorities of governments and institutions since its effects are reaching the point of no return more rapidly than one may think. Within 5 years, the climate change will be irreversible, and this will affect everyone’s life. The World Health Organisation has estimated that the number of additional deaths due to climate change between 2030 and 2050 is expected to be 250,000 per year (5 million in total), as 3.6 billion people already live in areas which are highly susceptible to global warming consequences.

    Climate change is a terrible problem, and it needs to be solved. It deserves to be a huge priority.
    ― Bill Gates, Founder of Microsoft

    Real Pollution from a Virtual World

    The scientific and industrial research is currently focused on the reduction of the CO2 emissions. The recent global spreading of digital technologies has the potential to accelerate the ecological transition. On the other hand, the digital technologies became in the last years one of the major sources of environmental pollution. According to Frans Berkhout and Julia Hertin in “De-materialising and re-materialising: digital technologies and the environment”, the effects of ICTs on the environment could be divided into direct impacts, indirect impacts, and structural/behavioural impacts. The direct impacts are those related to the production and maintenance of hardware (such as servers, cables, motherboards, etc.); these effects are not so different from those related to any other industrial product and they have negative consequences on the climate change. The indirect impacts are mostly related to the effect on the “de-materialising” of some products and services, which has an overall positive effect on climate change. Finally, the structural/behavioural impacts are related to more fundamental dynamics, like the changes in society, economics and legal frameworks. It is uneasy to predict the overall impact of the digitalization process on climate change. Ademe (Agence de l’environnement et de la maîtrise de l’énergie, Agency for the environment and the management of the energy) has shown that the CO2 production due to a single email which weighs just 1 Megabyte is around 19 grams. If you consider how many emails are sent everyday inside all the companies around the world you reach enormous quantities of CO2 emissions. In other words, 15 average emails are polluting more than driving 1 km with a car. Moreover, the ESG Karma Metrix Observatory has shown that other digital technologies have an unexpectedly high footprint. How many times do we use search engines like Google? Or do we watch movies and shows on Netflix? Websites like these are incredibly polluting. also It has been estimated that, if the Internet was a country, it would be the fourth most polluting in the world. These examples show that digital technologies are a double-edged sword: we must take care of our planet by wisely using the prodigies of the technology. As you may know, Airizon is actively working to reduce CO2 emissions by decreasing the time-to-market of hybrid, fully electrical and hydrogen propelled aircrafts. Our digital suite HEAD (Hydrogen and Electric Aircraft Designer) includes the most recent design methods for these types of aircrafts, helping the designers to speed up the process. However, as part of the humanity that is taking care of this planet, we are encouraging our network, customers and employees to take into account some small tips to lower our footprint:

    • If it is not necessary, do not answer the email by copying the whole email loop.
    • If you receive an email with some trivial information (e.g.: “Thank you for the document.”), delete it.
    • If you are in an email loop, always keep only the last email sent. Delete the previous ones.
    • Periodically erase your social media chats that are inactive.
    • Delete the social media groups that have no more reason to exist.
    • Do not open many internet pages at the same time, if it is not necessary.
    • Go to work by walking every time it is possible.

    As a first step to reduce our environmental footprint, at Airizon we have created our own email Emissions Trading System through an internal tool designed to record the emissions associated with each email sent by each member of the team (figure 1 and 2). Once the emails are recorded, those employees that have overreached the limit can request additional emails to the more virtuous ones. If the global monthly emissions are higher than the maximum value set as limit, the emails are reviewed to take corrective actions for the following month.

    Figure 1: the Emission Trading System developed by Airizon. The interface shows how many grams of CO2 each Team member produces, based on how many emails they have sent through the month.

    Figure 2: the interface of the Email Trading System developed by Airizon, but shown “per person”.

    Strategies for Sustainability: Green Computing

    As mentioned earlier, there is a clear distinction between direct impacts, indirect impacts and structural or behavioural impacts. This distinction is important for a branch of engineering that specifically studies the sustainability of IT: Green Computing. Green Computing is a sub-sector of Sustainable IT that focuses on researching and developing practices and procedures for using IT resources in an environmentally friendly way, without compromising IT performance. The aim is to find solutions that improve the efficiency of resources, promoting their reduction, reuse and recycling.

    Research into the benefits of Green Computing focuses mainly on two macro aspects:

    • The social aspect, as it has led to an increase in environmental awareness among consumers, who are now more likely to choose products, companies and agencies in the IT field that consider their environmental impact.
    • The economical aspect, as companies, through Green Computing processes, are able to greatly reduce electricity consumption, which translates into significant cost savings.

    However, no matter how much physical systems can be optimised and/or powered by renewable and sustainable energy, if the software running on these systems uses more than the necessary hardware resources, the energy savings will be in vain.
    If IT infrastructures become more sustainable, then the software on these same infrastructures must be too. This is how Green Software Development was born, a branch of Computer Engineering that aims to actualise the efforts behind the Green Computing’s philosophy by focusing on software optimisation. While Green Computing works on the physical, structural and social aspects of IT, Green Software Development works on the intangible and digital.

    The Asternox team specialises in research in Green Computing and Green Software Development. Despite this, to date, we face some critical issues related to the precise definition and measurement of emissions associated with software development.

    This complexity is due to a number of factors, including:

    • the definition of standards and tools for monitoring software systems and the machines where they run.
    • the intrinsic intangibility of software, an element characterised by multiple dynamics.
    • the variety of machines and infrastructures on which software runs, and other related elements.

    However, as experts in the field, we recognise that it is our duty to develop and implement evidence-based measurement methods. Our goal is to obtain estimates that are as accurate and representative of actual software emissions as possible, thus contributing to greater sustainability in the technology industry.

    A number of research teams and developers are similarly progressing in the development of software aimed at efficient monitoring. One example among all is Scaphandre, which has set itself the goal of enabling any company or professional to measure the energy consumption of its technological services and obtain this data in a convenient form by sending it through any monitoring or data analysis toolchain. Many other teams are engaged in the research and implementation of monitoring tools, indicating a strong willingness on the part of the developer world to not only produce tools, but to dedicate itself, with awareness and civic-mindedness, to creating the most optimised and ‘energy neutral’ software product possible.

    As a development team, we at Asternox have set ourselves the goal of analysing the world of the web in order to propose and develop a solution capable of reflecting the concepts of Green Computing and Green Software Development, and it is in this way that we support Airizon in its goal of producing ‘smart solutions for a clean sky’.

    Reducing Digital Consumption through Optimised Website Development

    As the colleagues from Airizon have rightly pointed out, many digital technologies produce a very high carbon footprint. The emissions of a single email sent are negligible, but their impact becomes significant when the estimated number of emails that are sent daily is around 227 billion. The same applies to another activity as simple and frequent as surfing the web.

    Following the example of our colleagues at Airizon, who have developed a system for offsetting their email emissions, we at Asternox are committed to studying the emissions generated by web surfing and aim to explore effective ways of offsetting them.
    The question we asked ourselves is: what is the environmental impact of websites and web-apps on the Internet? And, most importantly, why do they have such a high carbon footprint? The answer is simple: it cannot be determined. At least, not without running the numbers.

    As anticipated, by nature, hardware and software elements are not easily quantifiable or measurable, which is why it would be easier to calculate how many grains of rice exist in the world than to quantify every computer system connected to a network or even just ‘hosted’ on a digital platform.

    The physical consumption of these elements will always be different, even if we measure software on different machines, precisely because of the different underlying architectures.

    In spite of this, it is possible to recreate similar or favourable conditions to approximately measure the effectiveness and efficiency of certain solutions on one’s own machines and/or cloud services. The goal of one of Asternox’s most recent experiments is to instrument such measurements and establish a sustainable website development stack with the most relevant metrics extracted.

    As an example of this, let’s consider the Airizon website, developed and designed by Asternox, using our development stack: the site currently consumes 458 megabytes of RAM and 0.01 vCPU, both in peak utilisation and idle.

    ‘Peak utilisation’ refers to the operational condition of a system where the maximum workload occurs, while ‘idle’ describes the state where a website is active and running, but is not serving requests or handling significant user traffic.

    The website services that consume the most are the client, with 250 megabytes of RAM, and the server with 131 megabytes of RAM. In addition, the Content Delivery Networks (the CDNs) and the email gateway consume a total of 77 megabytes of RAM.

    In order to have a yardstick, we use WordPress, as the most popular and widely used Content Management System (CMS). A similar website, created in WordPress, without additional plugins, with a single page in addition to the home page and using a basic theme, reports an average consumption of 613 megabytes of RAM and 0.3 vCPU at peak, while in idle state consumption drops to 0.01 vCPU. If, on the other hand, we want to add active plugins and install a theme without images loaded in the gallery (internal CDN), the site consumes 1.32 GB RAM and 0.3 vCPU at peak, with an idle consumption of about 0.17 vCPU. It is evident that a more complex website requires more resources, resulting in increased emissions. Therefore, even a seemingly ‘simple’ website should not have such a high impact in terms of resource consumption.

    Our technology infrastructure is designed using a series of microservices, each of which has a specific, well-defined task. Unlike WordPress, which centralises most of its functionality in a single runtime file and extends it via plugins, our architecture divides functionality into separate microservices. This approach has the advantage of maintaining significantly lower total resource consumption than WordPress.

    In particular, each microservice is designed to perform a specific function, making the entire application more modular and easier to manage. This allows components to be upgraded, maintained and scaled independently. The division of functionality into microservices reduces overall resource consumption compared to a monolithic architecture such as WordPress, where all functionality is grouped together, increasing resource consumption. In WordPress, functionality is extended through plugins, whereas in our system, we extend functionality by integrating several microservices, thus offering greater flexibility and customisation.

    However, this architecture has both advantages and disadvantages: on the one hand, the integration of microservices can be complex, as each service must be customised and tailored to the client, requiring special attention to ensure that services are flexible and not limited to a single use case. On the other hand, the modularity of microservices offers numerous benefits, including the possibility of choosing the most suitable programming language for each service, managing functionality domains separately, facilitating updates and maintenance, improving security and optimising resource consumption.

    Environmental Benefits of Compiled Languages like Rust Over Garbage-Collected Languages

    In the context of environmental sustainability, the efficiency of programming languages plays a significant role. Compiled languages like Rust offer several advantages over garbage-collected languages such as JavaScript and Python, particularly in terms of energy consumption and resource utilisation.

    Efficiency and Performance

    Compiled languages, by their nature, convert code directly into machine language before execution. This process results in highly optimised and efficient binaries that can execute tasks more quickly and with less computational overhead. Rust, specifically, is designed with performance in mind, providing low-level control over system resources without sacrificing safety.

    In contrast, garbage-collected languages typically interpret or compile code at runtime, leading to additional overhead. Garbage collectors periodically scan memory to reclaim unused objects, which consumes CPU cycles and energy. This process can lead to performance bottlenecks and increased energy consumption as the system must handle garbage collection alongside the primary tasks.

    Memory Management

    Rust’s memory management system, which relies on ownership, borrowing, and lifetimes, ensures that memory is managed at compile time, eliminating the need for a garbage collector. This approach not only avoids the overhead associated with garbage collection but also results in more predictable memory usage patterns and reduced energy consumption.

    In garbage-collected languages, the runtime environment continuously monitors memory allocation and deallocation. This can lead to inefficiencies, such as memory fragmentation and periodic pauses for garbage collection, which collectively increase the energy footprint of applications.

    Lower Energy Consumption

    Several studies have shown that compiled languages tend to be more energy-efficient compared to interpreted or garbage-collected languages. A study published in the Journal of Green Software Engineering highlights that compiled languages like Rust and C tend to consume significantly less energy for equivalent tasks than languages like Python and JavaScript.

    The reason is twofold: first, compiled languages execute faster, reducing the time the CPU spends on a task; second, they have lower runtime overhead, meaning the CPU can enter low-power states more frequently and stay there longer. This reduced active time translates directly into lower energy consumption, which is beneficial for both cost savings and environmental impact.

    Resource Utilisation

    Rust’s efficient resource management also contributes to better utilisation of hardware resources. This efficiency means that fewer servers are required to handle the same workload, leading to less hardware production, reduced e-waste, and lower overall energy consumption. Efficient resource use in data centres, which are significant consumers of electricity, can have a substantial positive impact on environmental sustainability.

    Garbage-collected languages, by contrast, often require more powerful hardware to handle the same tasks efficiently. This requirement can lead to higher energy consumption and a greater environmental footprint due to the need for more servers and increased hardware turnover.

    Compiled languages like Rust offer substantial environmental benefits over garbage-collected languages. Their efficient performance, predictable memory management, lower energy consumption, and better resource utilisation make them more sustainable choices for software development. By adopting Rust, developers and organisations can contribute to reducing the environmental impact of their computing resources, promoting greener and more sustainable technology practices.

    Conclusion

    Technological advancements have been the driving force behind modern societal progress. While they bring numerous benefits, they also pose significant environmental challenges: we all are well aware of the great consumption of Artificial Intelligence, Big Data, the Internet of Things, blockchains, and many more. The energy demand from these infrastructures is growing exponentially, contributing significantly to carbon emissions, especially if the energy comes from non-renewable sources. Yet, society must move forward, often without looking back.

    However, the future of Sustainable IT is promising. By adopting a multifaceted approach that includes energy efficiency, sustainable product design, eco-friendly software development, regulatory frameworks, and public awareness, we can ensure that technological growth contributes to a sustainable future. The key challenge remains in educating developers and keeping up with technological advancements to provide more sustainable and accessible tools.

    The most significant investment businesses can make in the near future is to promote the long-term viability of their software and IT architecture. Sustainable development is more than just efficiency; it also encompasses social and ethical responsibility. Businesses must be more mindful of their environmental impact and seek increasingly sustainable solutions, even if these solutions are small-scale at the beginning.

    Making a difference now is more vital than ever. All professionals must play their part in creating a sustainable future.