A system for reducing the carbon footprint by minimizing the energy consumption of software
The system addresses energy consumption challenges in software by identifying and optimizing code snippets through static analysis and AI-driven suggestions, achieving reduced energy use and carbon footprint.
Patent Information
- Application Number
- PCT/TR2024/051528
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-12-10
- Publication Date
- 2025-07-03
AI Technical Summary
Existing software technologies face challenges in minimizing energy consumption and reducing carbon footprint, with a need for systems that can identify and optimize energy-intensive code snippets through static source code analysis and provide editing suggestions to enhance efficiency.
A system that performs static source code analysis to identify energy-consuming code snippets, applies rule sets for optimization, and uses AI tools like ChatGPT and Copilot to suggest improvements, integrating energy efficiency monitoring and classification.
The system effectively reduces energy consumption and carbon footprint by optimizing code snippets, providing actionable suggestions for users to enhance energy efficiency and sustainability.
Smart Images

Figure TR2024051528_03072025_PF_FP_ABST
Abstract
Description
[0001] DESCRIPTION
[0002] A SYSTEM FOR REDUCING THE CARBON FOOTPRINT BY MINIMIZING THE ENERGY CONSUMPTION OF SOFTWARE
[0003] Technical Field
[0004] The present invention relates to a system for minimizing the energy consumption of software and thus reducing the carbon footprint by identifying code snippets that increase energy consumption via static source code analysis and providing code editing suggestions in order to make these snippets faster and less energy consuming.
[0005] Background of the Invention
[0006] Today, the technology sector faces a serious challenge in terms of energy consumption and carbon footprint. This problem is about to become a large-scale problem that is expected to account for 14% of the carbon footprint by 2040. This increase also leads to serious concerns about energy costs. These realities attract the attention of the technology world and lead to the green software movement. This movement is embraced by a wide range of people, from manufacturers to end users, and aims to develop environmentally friendly and sustainable applications. Furthermore, the running time of applications has a direct impact on energy consumption. And this makes one of the challenges in energy efficiency even more evident. The world of technology is changing rapidly, which means that we need to stay up to date in order to maintain accurate and effective solutions. In this context, measures such as minimizing energy consumption, preferring servers based on renewable resources and green software certification should be taken in order to make the applications that have been developed or will be developed environmentally friendly and sustainable. For this reason, considering the studies and deficiencies included in the current technique, it is understood that there is a need for a system for minimizing the energy consumption of software and thus reducing the carbon footprint by identifying code snippets that increase energy consumption via static source code analysis and providing code editing suggestions in order to make these snippets faster and less energy consuming.
[0007] The Chinese patent document no. CN111158974A, an application included in the state of the art, discloses a system configured to measure the energy consumption of the processors of the servers. The invention discloses a cloud server-oriented hardware perception CPU energy consumption measuring and calculating method. The method comprises the following steps of obtaining CPU hardware parameter information of a server; establishing and maintaining a CPU parameter model database to record a parameter model of the current mainstream CPU; according to the server CPU parameter information, selecting a parameter model matched with the server CPU from a CPU parameter model database by utilizing a CPU parameter model matching algorithm; in combination with the CPU energy consumption reference data set and the mainstream CPU energy consumption model, analyzing the measurement and calculation performance and model characteristics of the CPU energy consumption model in a specific CPU issuing year; and obtaining a CPU issuing year from the matched CPU parameter model, and selecting a CPU energy consumption model with the best calculation performance in the year as a calculation model of the server CPU according to the analysis result. According to the method, the model training difficulty is reduced, and the system deployment is simplified while the energy consumption measurement accuracy of the cloud server is improved.
[0008] The Chinese patent document no. CN112083929A, another application included in the state of the art, discloses a system configured to reduce power consumption by performing code optimization with machine learning. The invention discloses a performance-energy consumption collaborative optimization method and device for a power constraint system, belongs to the technical field of high-performance computing, and aims to solve the problem of overlarge energy consumption in the overall operation process of the system in high-performance computing. Energy consumption and performance of program operation are optimized mainly through machine learning model prediction and power upper limit setting at an OpenMP parallel domain level. The invention comprises three parts of data collection, model training and code optimization, and the data collection comprises the step of extracting feature data needed by model training from an OpenMP parallel program; the model training comprises modeling training on performance and energy consumption according to power configuration and extracted characteristic data; and the code optimization comprises the steps of obtaining optimal power configuration according to the model obtained by training, and performing code optimization according to the optimal power configuration. The invention helps a universal parallel application program reasonably utilize resources, improves efficiency, and is helpful for improving the utilization rate of energy in power constraint scenes such as cloud computing and the Internet of Things.
[0009] Summary of the Invention
[0010] An object of the present invention is to realize a system developed with the aim of minimizing the energy consumption of software and thus reducing the carbon footprint by identifying code snippets that increase energy consumption via static source code analysis and providing code editing suggestions in order to make these snippets faster and less energy consuming.
[0011] Another object of the present invention is to realize a system developed with the aim of finding the code blocks that will cause energy waste depending on the identified rule sets and providing suggestions for these code blocks. A further object of the present invention is to realize a system developed with the aim of collecting measurements such as CPU expenditure by application servers and database in order to further reduce energy consumption and helping users to focus on energy saving opportunities by providing these data to them.
[0012] A further object of the present invention is to realize a system developed with the aim of supporting sustainability efforts by interpreting these data from a green software perspective, providing all these measurements in an interface that users can easily access, rating applications according to their energy efficiency classes and calculating their carbon footprints.
[0013] Detailed Description of the Invention
[0014] “A System for Reducing the Carbon Footprint by Minimizing the Energy Consumption of Software” realized to fulfil the objective of the present invention is shown in the figure attached, in which:
[0015] Figure 1 is a schematic view of the inventive system.
[0016] The components illustrated in the figure are individually numbered, where the numbers refer to the following:
[0017] 1. System
[0018] 2. Electronic Device
[0019] 3. Interface
[0020] 4. Database
[0021] 5. Server
[0022] U. Application
[0023] The inventive system (1) developed with the aim of minimizing the energy consumption of software and thus reducing the carbon footprint by identifying code snippets that increase energy consumption via static source code analysis and providing code editing suggestions in order to make these snippets faster and less energy consuming comprises; at least one electronic device (2) which is configured to exchange data by using any remote communication protocol and to run at least one application thereon; at least one interface (3) which is configured to be run on the electronic device (2) and to visualize data related to energy efficiency and carbon footprint and to provide monitoring and optimization; at least one database (4) which is configured to keep a record of energy consumption data in the form of application (U) servers and CPU expenditures therein; at least one server (5) which is configured to establish connection with the electronic device (2) by using any communication protocol and to establish communication with the interface (3) run on the electronic device (2) through this established connection; to access data on the database (4) and to record data on the database (4); to analyze the energy consumption of applications (U); to identify the code snippets that cause the highest energy consumption; to enable energy consumption to be determined and optimization opportunities to be detected; to identify rule sets that comprise the rules that will be used to increase the energy efficiency of code snippets and enable energy saving; to enable the code blocks that will cause energy waste depending on the identified rule sets to be found and the suggestions for these code blocks to be provided; to perform static source code analysis in order to detect code snippets that increase energy consumption; to analyze the code according to the specified rule sets and to mark the parts that increase or decrease energy efficiency; to mark the detected code snippets that increase energy consumption with the “Green Code” label; to enable these markings to be easily identified and corrected by users; to use artificial intelligence integration in order to show users how they can correct the marked code snippets; to provide suggestions to users in order to improve code snippets with artificial intelligence tools such as ChatGPT and Copilot; to collect energy consumption data in the form of application (U) servers and database (4) CPU expenditures through database (4); and to use these data in order to monitor application (U) performance and energy efficiency; to interpret energy consumption data from a green software perspective so as to enable energy saving opportunities and improvements to be understood better; to provide all these data and suggestions on the interface (3); to assign energy efficiency classes to projects within the application (U) so as to determine how energy friendly the projects are and to provide them to the users on the interface (3).
[0024] The electronic device (2) included in the inventive system (1) is configured to exchange data by using any remote communication protocol and to run at least one application thereon. The electronic device (2) is a device in the form of a desktop computer and / or portable computer. The electronic device (2) is configured to run the interface (3) thereon. The electronic device (2) is configured to establish connection with the server (5) by using any remote communication protocol included in the state of art.
[0025] The interface (3) included in the inventive system (1) is configured to be run on the electronic device (2). The interface (3) is configured to visualize data related to energy efficiency and carbon footprint and to provide monitoring and optimization.
[0026] The database (4) included in the inventive system (1) is configured to establish connection with the server (5). The database (4) is configured to keep a record of energy consumption data in the form of application (U) servers and CPU expenditures therein. The server (5) included in the inventive system (1) is configured to establish connection with the electronic device (2) by using any communication protocol included in the state of art and to establish communication with the interface (3) run on the electronic device (2) through this established connection. The server (5) is configured to access data on the database (4) and to record data on the database (4). The server (5) is configured to analyze the energy consumption of applications (U); to identify the code snippets that cause the highest energy consumption; to enable energy consumption to be determined and optimization opportunities to be detected. The server (5) is configured to identify rule sets that comprise the rules that will be used to increase the energy efficiency of code snippets and enable energy saving; to enable the code blocks that will cause energy waste depending on the identified rule sets to be found and the suggestions for these code blocks to be provided. The server (5) is configured to perform static source code analysis in order to detect code snippets that increase energy consumption; to analyze the code according to the specified rule sets and to mark the parts that increase or decrease energy efficiency. The server (5) is configured to mark the detected code snippets that increase energy consumption with the “Green Code” label; to enable these markings to be easily identified and corrected by users. The server (5) is configured to use artificial intelligence integration in order to show users how they can correct the marked code snippets; to provide suggestions to users in order to improve code snippets with artificial intelligence tools such as ChatGPT and Copilot. The server (5) is configured to collect energy consumption data in the form of application (U) servers and database (4) CPU expenditures through database (4); and to use these data in order to monitor application (U) performance and energy efficiency; to interpret energy consumption data from a green software perspective so as to enable energy saving opportunities and improvements to be understood better; to provide all these data and suggestions on the interface (3). The server (5) is configured to assign energy efficiency classes to projects within the application (U) so as to determine how energy friendly the projects are and to provide them to the users on the interface (3). Industrial Application of the Invention
[0027] In the inventive system (1), the server (5) establishes connection with the electronic device (2) by using any communication protocol and establishes communication with the interface (3) run on the electronic device (2) through this established connection; accesses data on the database (4) and records data on the database (4) analyzes the energy consumption of applications (U); identifies the code snippets that cause the highest energy consumption; enables energy consumption to be determined and optimization opportunities to be detected; identifies rule sets that comprise the rules that will be used to increase the energy efficiency of code snippets and enable energy saving; enables the code blocks that will cause energy waste depending on the identified rule sets to be found and the suggestions for these code blocks to be provided; performs static source code analysis in order to detect code snippets that increase energy consumption; analyzes the code according to the specified rule sets and marks the parts that increase or decrease energy efficiency; marks the detected code snippets that increase energy consumption with the “Green Code” label; enables these markings to be easily identified and corrected by users; uses artificial intelligence integration in order to show users how they can correct the marked code snippets; provides suggestions to users in order to improve code snippets with artificial intelligence tools such as ChatGPT and Copilot; collects energy consumption data in the form of application (U) servers and database (4) CPU expenditures through database (4); and uses these data in order to monitor application (U) performance and energy efficiency; interprets energy consumption data from a green software perspective so as to enable energy saving opportunities and improvements to be understood better; provides all these data and suggestions on the interface (3); assigns energy efficiency classes to projects within the application (U) so as to determine how energy friendly the projects are and provides them to the users on the interface (3). In this way, it is enabled to contribute to energy efficiency and carbon footprint reduction, to provide a comprehensive technique for achieving energy saving targets and developing environmentally friendly software, and to achieve these goals by using artificial intelligence integration, data collection and interpretation, as well as energy consumption analysis, static code analysis through all these process steps.
[0028] Within these basic concepts; it is possible to develop various embodiments of the inventive “A System (1) for Reducing the Carbon Footprint by Minimizing the Energy Consumption of Software”; the invention cannot be limited to examples disclosed herein and it is essentially according to claims.
Claims
CLAIMS1. A system (1) developed with the aim of minimizing the energy consumption of software and thus reducing the carbon footprint by identifying code snippets that increase energy consumption via static source code analysis and providing code editing suggestions in order to make these snippets faster and less energy consuming; comprising at least one electronic device (2) which is configured to exchange data by using any remote communication protocol and to run at least one application thereon; at least one interface (3) which is configured to be run on the electronic device (2) and to visualize data related to energy efficiency and carbon footprint and to provide monitoring and optimization; at least one database (4) which is configured to keep a record of energy consumption data in the form of application (U) servers and CPU expenditures therein; and characterized by at least one server (5) which is configured to establish connection with the electronic device (2) by using any communication protocol and to establish communication with the interface (3) run on the electronic device (2) through this established connection; to access data on the database (4) and to record data on the database (4); to analyze the energy consumption of applications (U); to identify the code snippets that cause the highest energy consumption; to enable energy consumption to be determined and optimization opportunities to be detected; to identify rule sets that comprise the rules that will be used to increase the energy efficiency of code snippets and enable energy saving; to enable the code blocks that will cause energy waste depending on the identified rule sets to be found and the suggestions for these code blocks to be provided; to perform static source code analysis in order to detect code snippets that increase energy consumption; to analyze the code according to the specified rule sets and to mark the parts that increase or decrease energy efficiency; to mark thedetected code snippets that increase energy consumption with the “Green Code” label; to enable these markings to be easily identified and corrected by users; to use artificial intelligence integration in order to show users how they can correct the marked code snippets; to provide suggestions to users in order to improve code snippets with artificial intelligence tools such as ChatGPT and Copilot; to collect energy consumption data in the form of application (U) servers and database (4) CPU expenditures through database (4); and to use these data in order to monitor application (U) performance and energy efficiency; to interpret energy consumption data from a green software perspective so as to enable energy saving opportunities and improvements to be understood better; to provide all these data and suggestions on the interface (3); to assign energy efficiency classes to projects within the application (U) so as to determine how energy friendly the projects are and to provide them to the users on the interface (3).
2. A system (1) according to Claim 1; characterized by the electronic device (2) which is a device in the form of a desktop computer and / or portable computer configured to exchange data by using any remote communication protocol and to run at least one application thereon.
3. A system (1) according to Claim 1 or 2; characterized by the electronic device (2) which is configured to run the interface (3) thereon.
4. A system (1) according to any one of the preceding claims; characterized by the electronic device (2) which is configured to establish connection with the server (5) by using any remote communication protocol.
5. A system (1) according to any one of the preceding claims; characterized by the interface (3) which is configured to be run on the electronic device (2).
6. A system (1) according to any one of the preceding claims; characterized by the interface (3) which is configured to visualize data related to energy efficiency and carbon footprint and to provide monitoring and optimization.
7. A system (1) according to any one of the preceding claims; characterized by the database (4) which is configured to establish connection with the server (5).
8. A system (1) according to any one of the preceding claims; characterized by the database (4) which is configured to keep a record of energy consumption data in the form of application (U) servers and CPU expenditures therein.
9. A system (1) according to any one of the preceding claims; characterized by the server (5) which is configured to establish connection with the electronic device (2) by using any communication protocol and to establish communication with the interface (3) run on the electronic device (2) through this established connection.
10. A system (1) according to any one of the preceding claims; characterized by the server (5) which is configured to access data on the database (4) and to record data on the database (4).
11. A system (1) according to any one of the preceding claims; characterized by the server (5) which is configured to analyze the energy consumption of applications (U); to identify the code snippets that cause the highest energy consumption; to enable energy consumption to be determined and optimization opportunities to be detected.
12. A system (1) according to any one of the preceding claims; characterized by the server (5) which is configured to identify rule sets that comprise the rules that will be used to increase the energy efficiency of code snippets and enableenergy saving; to enable the code blocks that will cause energy waste depending on the identified rule sets to be found and the suggestions for these code blocks to be provided.
13. A system (1) according to any one of the preceding claims; characterized by the server (5) which is configured to perform static source code analysis in order to detect code snippets that increase energy consumption; to analyze the code according to the specified rule sets and to mark the parts that increase or decrease energy efficiency.
14. A system (1) according to any one of the preceding claims; characterized by the server (5) which is configured to mark the detected code snippets that increase energy consumption with the “Green Code” label; to enable these markings to be easily identified and corrected by users.
15. A system (1) according to any one of the preceding claims; characterized by the server (5) which is configured to use artificial intelligence integration in order to show users how they can correct the marked code snippets; to provide suggestions to users in order to improve code snippets with artificial intelligence tools such as ChatGPT and Copilot.
16. A system (1) according to any one of the preceding claims; characterized by the server (5) which is configured to collect energy consumption data in the form of application (U) servers and database (4) CPU expenditures through database (4); and to use these data in order to monitor application (U) performance and energy efficiency; to interpret energy consumption data from a green software perspective so as to enable energy saving opportunities and improvements to be understood better; to provide all these data and suggestions on the interface (3).
17. A system (1) according to any one of the preceding claims; characterized by the server (5) which is configured to assign energy efficiency classes to projects within the application (U) so as to determine how energy friendly the projects are and to provide them to the users on the interface (3).
Citation Information
Patent Citations
Computer analysis of software resource load
US11307971B1
Energy management systems and methods
US20110231320A1
Ai-based software service to shave electricity consumption peak
US20220109298A1