Data processing method for determining the value of an ecological indicator

A data processing method integrates software metrics into energy and carbon consumption calculations, providing precise estimates for hardware and software components to optimize energy and carbon footprints in computer systems.

FR3160532A1Pending Publication Date: 2025-09-26SCALEDYNAMICS
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
FR2024002989
Authority / Receiving Office
FR · FR
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-03-25
Publication Date
2025-09-26

AI Technical Summary

Technical Problem

Existing methods for evaluating energy and carbon consumption in data centers are incomplete as they do not account for all hardware components and software parts, leading to inaccurate and non-comparable estimates.

Method used

A data processing method that integrates software metrics into energy and carbon consumption calculations, using dynamically sampled parameters to provide precise estimates for both hardware and software components, including operational and construction contributions.

Benefits of technology

Enables comprehensive and accurate assessment of energy and carbon footprints across computer systems, facilitating targeted optimization strategies to reduce emissions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

The invention relates to a data processing method for determining a value of an ecological indicator of a computer system (IS), said computer system (IS) comprising an execution unit and at least one software load capable of being executed from said execution unit, said method comprising a step of receiving operating data (Data) from the computer system (IS), said operating data comprising at least a first set (Mi) of parameters associated with an operation of the execution unit in connection with the execution of the software load and a step of calculating the value of the ecological indicator from at least one parameter of the first set (Mi) of parameters. Figure for abstract: Fig.1
Need to check novelty before this filing date? Find Prior Art

Description

Title of the invention: Data processing method for determining the value of an ecological indicator Technical field

[0001] The present invention relates to the field of computer systems and more particularly to the optimization of energy consumption and / or carbon emissions associated with these systems. Previous Art

[0002] With the development of digital technology, there are now a number of large data processing centers, also called "data centers", spread across the world. These processing centers use complex computer systems comprising equipment that must constantly be supplied with electricity both for their operation and for their cooling (air conditioning) in order to preserve the integrity of the electronic circuits used.

[0003] Optimizing the energy consumption of these complex computer systems is therefore a crucial issue in the objective of overall reduction of the carbon footprint of human origin.

[0004] The carbon footprint is usually divided into operational contribution and construction contribution (also called "embodied"). The operational contribution is the contribution directly induced by the consumption of electrical energy. To calculate it, it is also necessary to take into account the energy efficiency of each "data center" and the carbon emission factor of the energy supplier that supplies each "data center", which will make it possible to estimate the carbon emissions induced by the production of electricity. The construction contribution consists of evaluating the share of carbon emitted during the construction and recycling of equipment in proportion to the share of use of this equipment over its operational lifetime.

[0005] The evaluation of the operational contribution of a piece of equipment can be done today using various methods for estimating energy and carbon footprints based on processor benchmark data, such as SPEC2008, available from the link https: / / www.spec.org / power_ssj2008 / .

[0006] Footprint calculation estimators exist, among which we distinguish:

[0007] - fingerprint reporters from cloud providers such as GCP®, Azuré®, AWS®, OVH®;

[0008] - an open-source application available at cloudCarbonFootprint.com, which models the carbon and energy consumed by the computing instances of the main cloud providers. This modeling is based on the “Cloud Jewels” methodology published by Etsy engineering;

[0009] - estimation models and APIs based on the group's research results Boavizta working group (see in particular the link boavizta.org). This working group produces expertly reviewed and updated resources under free licenses.

[0010] These state-of-the-art estimators focus on providing an estimate of the energy consumption of physical servers or virtualized instances. Their evaluation is partial because they do not take into account all the hardware components used in a data center or the volumes of communications exchanged. In addition, the consumption evaluation is carried out via a posteriori calculations, for example by extracting loads and usage durations from invoices. Finally, the consumption evaluation is based on undocumented calculation methods which make it difficult to compare the results with each other.

[0011] Furthermore, there is no technique relating to an energy assessment or Carbon dedicated to the software part. This is very problematic because an infrastructure is created and used solely to run software. It is therefore the software that consumes energy and generates carbon through the infrastructure.

[0012] There is therefore a need to propose a method making it possible to evaluate both the energy and carbon consumption of a computer system more precisely, while integrating the software part in order to be able to globally optimize carbon emissions. Summary of the invention

[0013] An object of the invention relates to a method of processing data for determining a value of an ecological indicator of a computer system, said computer system comprising an execution unit and at least one software load capable of being executed from said execution unit. The method comprises a step of receiving operating data from the computer system, said operating data comprising at least a first set of parameters associated with an operation of the execution unit in connection with the execution of the software load and a step of calculating the value of the ecological indicator from at least one parameter of the first set of parameters.

[0014] The invention makes it possible to provide an energy / carbon estimate for a software load belonging to a computer system. This estimate is based on metrics specific to the software load, dynamically sampled by the software infrastructure at variable periods.

[0015] In an alternative embodiment, the operating data of the computer system comprises a second set of parameters associated with a func overall operation of the execution unit and a third set of parameters associated with the overall operation of the computer system.

[0016] In an alternative embodiment, the ecological indicator is chosen from a set of ecological indicators, said set of ecological indicators comprising at least: an energy consumed by the software load, an operational contribution of the software load, a construction contribution of the software load.

[0017] In an alternative embodiment, the energy consumed is a function of at least one parameter from the first set of parameters and at least one parameter from the second set of parameters.

[0018] In an alternative embodiment, the operational contribution is a function of the energy consumed and at least one parameter from the third set of parameters.

[0019] In an alternative embodiment, the construction contribution is a function of at least one parameter from the first set of parameters and at least one parameter from the second set of parameters.

[0020] In an alternative embodiment, the energy consumed is determined according to the equation: Ei = (Pc + Pm + X Tu + En, with Pc a CPU power, Pm a memory power, Ps a storage power; Tu a reference duration, En an energy consumed by input / output accesses.

[0021] In an alternative embodiment, the operational contribution is determined according to the equation: Cop. = (EtX PUF XF, ) with Pue an inverse of the energy efficiency of the computer system; Fc a power to CO2 conversion factor.

[0022] In an alternative embodiment, the construction contribution is determined according to the equation: Qq _ qx ~ X 5 ) with a quantity of total emissions due to the construction of the computer system, Ta a time of allocation of Hardware resource to the Software resource of the computer system, L a lifetime of the computer system; Sa a share of Hardware resource allocated to the Software resource.

[0023] In an alternative embodiment, the computer subsystem comprises N software loads executed from said execution unit in different time ranges, said method comprising a step of determining a residual value of the ecological indicator, said residual value being representative of a non-use of said execution unit over time.

[0024] In an alternative embodiment, the value of the ecological indicator determined for the software load is displayed in a global visualization graph of the operation of all the software loads of the computer system.

[0025] Another object of the invention relates to a data processing device for determining a value of an ecological indicator of a computer system, said computer system comprising an execution unit and at least one software load executed from said execution unit, said processing device comprising: a module for receiving operating data from the computer system, said operating data comprising at least a first set of parameters associated with an operation of the execution unit in connection with the execution of the software load and a module for calculating the value of the ecological indicator from at least one parameter of the first set of parameters.

[0026] Another object of the invention relates to a computer system comprising an execution unit and at least one software load executed from said execution unit, said computer system being able to transmit operating data of said computer system, said operating data comprising at least a first set of parameters associated with an operation of the execution unit in connection with the execution of the software load, at least one parameter of the first set being able to be processed to calculate a value of an ecological indicator.

[0027] In a particular embodiment, the software load is adapted to execute within another software load.

[0028] Another subject of the invention relates to a computer program comprising program code instructions for executing the steps of a processing method for determining a value of an ecological indicator according to the data processing method for determining a value of an ecological indicator of a computer system, when said program is executed by a processor.

[0029] Another subject of the invention relates to a computer-readable recording medium on which is recorded a computer program comprising program code instructions for executing a decision-making method according to the data processing method for determining a value of an ecological indicator of a computer system, when said program is executed by a processor. Description of figures

[0030] Other characteristics and advantages of the invention will appear during the reading of the detailed description which follows for the understanding of which reference will be made to the appended drawings in which:

[0031] [Fig.l] illustrates an IT infrastructure comprising an in system computer and a data processing device, according to a first embodiment of the invention;

[0032] [Fig.2] illustrates a first embodiment of the computer system of [Fig.l];

[0033] [Fig.3] illustrates a second embodiment of the computer system of [Fig.l];

[0034] [Fig.4] illustrates a third embodiment of the computer system of [Fig.l];

[0035] [Fig.5] illustrates a computer infrastructure comprising a data processing device, according to a second embodiment of the invention;

[0036] [Fig.6] illustrates a computer infrastructure comprising a data processing device, according to a third embodiment of the invention;

[0037] [Fig.7] illustrates a global visualization of the data from the data processing device of figures 1 to 6, according to a first visualization mode;

[0038] [Fig.8] illustrates a global visualization of the data from the data processing device of figures 1 to 6, according to a second visualization mode;

[0039] [Fig.9] illustrates a global visualization of the data from the data processing device of figures 1 to 6, according to a third visualization mode;

[0040] [Fig. 10] illustrates an ecological performance optimization cycle that can be implemented by the data processing device of Figures 1 to 6;

[0041] [Fig. 11] illustrates a method of impact estimation via simulations carried out by the data processing device of Figures 1 to 6;

[0042] [Fig. 12] illustrates an example of a reduction plan simulated according to the method of [Fig. 11].

[0043] Description of embodiments

[0044] [Fig.l] illustrates an IT infrastructure INF according to a first embodiment of the invention comprising a computer system SI and a data processing device T.

[0045] The computer system SI is a “processing” system which allows both input and output communication to the outside and also to have calculation means and storage capacity to carry out different types of software processing.

[0046] The definition of such a computer system IS is therefore relatively broad and encompasses any system comprising a set of servers or computing units which execute software. This can be:

[0047] - an “on-premise” system, i.e. on site, running applications;

[0048] - an laaS (for “Infrastructure as a Service”), the objective of which is to provide virtual machines or instances running on top of servers (server type "bare metal"), each of these virtual machines being a software load on the system. In this specific case, there is a need for the IAS provider to control its energy consumption or carbon emissions.

[0049] - laaS users who will also deploy software loads to inside each of the virtual machines;

[0050] - laaS users who run container runtime systems (e.g. example using Kubemetes® software). In this context, the software loads are both the containers but also the integrated management processes of the Kubemetes® software;

[0051] - a managed service above the server.

[0052] Beyond a system composed of servers, the IT system IS encompasses any system that executes software, such as:

[0053] - a set of applications on a corporate IT system;

[0054] - desktop or laptop computers;

[0055] - a fleet of mobile phones;

[0056] - an embedded system like machine2machine;

[0057] - mobile telephone terminals.

[0058] As illustrated in Figures 2 to 4, the computer system SI comprises:

[0059] - an execution unit UE;

[0060] - at least one software load.

[0061] The execution unit UE is, for example, composed of a plurality of CPUs (for "Central Processing Unit") processors. Alternatively, the unit UE comprises a specific computing peripheral such as a set of GPUs (for "Graphics Processing Unit") for floating point computing, necessary for artificial intelligence. The execution unit UE may also have specific computing units either through specialized cards or internal coprocessors available. In addition to these computing means, disks will allow data to be stored permanently. One or more memories and input-output peripherals will allow temporary or resilient data storage to be carried out.

[0062] The software load is associated with the operation of software present in the IT system IS. This notion also encompasses a part of code executing within an application or a process, for which the developer may have associated energy or carbon emission performance measurements.

[0063] There may be several levels of nesting of software loads, as illustrated in Figures 2 to 4.

[0064] [Fig.2] represents a computer system SI comprising N software loads SW; to SWN. These software loads run directly on the execution unit EU. This [Fig.2] illustrates the case of several applications on the same system. It also illustrates the case of a set of virtual machines allowing the hardware to be visualized at the software level, for example in a structure composed of bare metal servers.

[0065] [Fig.3] describes a computer system SI in which several software loads SSWi to SSWN execute within an upstream software load SW; to SWN. It can thus be a set of applications or N different processes executing above a virtual machine or N processes executing within the same application.

[0066] [Fig.4] describes a computer system SI in which several software loads SSSWi to SSSWN execute within another software load SSW; to SSWN which itself executes within an upstream software load SW; to SWN finally executing on the execution unit UE. This can be the case of N activity flows within several applications in a virtual machine.

[0067] For all of the embodiments of FIGS. 2 to 4, the computer system SI is adapted to transmit operating data Data from the computer system to the data processing device T.

[0068] These operating data comprise a first set Mi of parameters associated with an operation of the execution unit in connection with the execution of the software load. The first set M; encompasses different types of parameters associated with the software load i such as:

[0069] - a CPU usage time for the execution of the software load, noted Tci;

[0070] - a CPU load for the execution of the software load, noted Lci;

[0071] - a GPU usage time for the execution of the software load, noted Tgi;

[0072] - a GPU load for the execution of the software load, noted Lgi.

[0073] - an amount of storage used for the execution of the software load, noted Si;

[0074] - a quantity of data exchanged during the usage time Tci.

[0075] The operating data of the computer system also includes a second set R of parameters associated with an overall operation of the execution unit. The second set R includes different types of parameters such as:

[0076] - a number of threads, noted Nthr. By "thread", we mean an execution flow software for which execution time is allocated on the processor.

[0077] - a minimum power consumed per thread (0% load), noted Pmin;

[0078] - a maximum power consumed per thread (100% load), noted Pmax. The values ​​of Pmin and Pmax generally come from benchmarks and are given for a given microarchitecture.

[0079] - a size of Ram (for “Random Access Memory” in English) of the instance in Bytes, denoted Qm;

[0080] - a data replication factor, noted Rs, due to the architecture of the system of storage (for example a RAID architecture for “Redundant Array of Independent Disks”) and other possible replicas;

[0081] - a number of GPU units; noted Ng;

[0082] - a part of the HW resource (for “Hardware” in English) allocated to the SW (for "Software" in English), noted Sa. For virtual instances, this parameter corresponds to a number of vCPUs divided by the total number of maximum allocatable vCPUs on the server. By "vCPU", we mean a share of a physical CPU assigned to a virtual machine;

[0083] - a lifetime of the installation in years, noted L;

[0084] - a number of storage hard drives; noted Nhdd;

[0085] - a number of non-volatile memory storage “drives”, noted Nssd;

[0086] - a number of CPU sockets, denoted Nsock. By "socket" we mean a connector used to interface a processor with a motherboard;

[0087] - a size of installed Ram in GB, noted Qram.

[0088] The operating data Data also includes a third set DC of parameters associated with the overall operation of the computer system.

[0089] The third DC set includes different types of parameters such as:

[0090] - the inverse of an energy efficiency of the computer system, noted Pue for ("Power usage effectiveness" in English). This parameter allows to take into account the total electrical energy actually dedicated to the execution of the software load, such as energy for cooling, converters, etc. A Pue greater than 1 is generally given for a "data center" or as an overall average for a "provider".

[0091] - a power (kWh) to CO2 conversion factor of a regional electricity network noted Fc, possibly corrected for data centers equipped with autonomous generators (often published in Tonnes of CO2 / kWh).

[0092] As illustrated in [Fig.l], the data processing device T is adapted to receive the operating data Data from the computer system. From this data, this processing device T implements a data processing method.

[0093] This processing method comprises a step of receiving the data Data and a step of calculating a value of an ecological indicator from at least one parameter of the first set Mi of parameters. By ecological indicator, we mean here an indicator which takes into account energy consumption and / or carbon emissions.

[0094] The ecological indicator belongs to a set of ecological indicators comprising at least one energy consumed E; by a software load SWi, SSWi, SSSWi, an operational contribution Cop; of the software load SW; ; SSW; ; SSSWi, a construction contribution Cc; of the software load SW; ; SSW; ; SSSWi.

[0095] The energy consumed E; by the software load is calculated in Joules or in Wh. It is determined according to the equation:

[0096] = (Pc + Pm+Ps)xTu + En.

[0097] The Pc parameter is associated with the execution unit UE. It corresponds to a power consumed by physical or virtual CPUs themselves, estimated from benchmarked minimum and maximum values, in proportion to the number of CPUs and the % load. The CPU power, for a set of Nthr “threads” (or vCpus) loaded at an average rate Le, is calculated as follows:

[0098] pc= (P^ + tP^-P,,,^

[0099] As has already been specified, at least in part:

[0100] Pmin: minimum power consumed per “thread” (0% load);

[0101] P^: maximum power consumed per “thread” (100% load);

[0102] Lc: an average load for the “threads” considered;

[0103] Nthr: a number of “threads”.

[0104] The same principle applies to possible GPUs. Indeed, the power Pg of a GPU is calculated in a similar way to that of a CPU, except that the entire GPU card is considered. This power is calculated as follows:

[0105] pc= (Pmi„+iPlm-P„„)

[0106] As has already been specified, at least in part:

[0107] Pmin: minimum power consumed by GPU (0% load);

[0108] P„,ax: maximum power consumed by GPU (100% load);

[0109] Lg: an average load for the GPUs considered;

[0110] Ng; a number of GPUs.

[0111] The parameter Pm is associated with a memory. It corresponds to a power consumed or dissipated by a RAM memory, estimated by multiplying the RAM size by a unit power. In the embodiment of the invention, the power consumed by the RAM is calculated from an average dissipation coefficient Cm according to the equation:

[0112] Pm= QmxCm

[0113] As has already been specified, at least in part:

[0114] Qm: a RAM size of the instance (in Bytes);

[0115] Cm: a RAM power coefficient (W / Bytes)

[0116] The value of Cm is deduced from data from the main memory manufacturers DDR4 and DDR5.

[0117] Theoretically, part of the RAM is already included in the CPU power coefficients Pmi„ and Pmax, these being derived from benchmarks. The correction made to the value of Q takes into account the RAM configuration of the instance and the server as well as the RAM configuration of the machines evaluated for the CPU architecture considered.

[0118] The parameter Ps is associated with a storage power. It corresponds to a power consumed by a hard disk, estimated by multiplying the storage size by a unit power and a possible replication factor. Such a factor is given by an IT service provider and a storage service associated with an instance. The storage power Ps is calculated from an average dissipation coefficient according to the equation:

[0119] Ps = Q*CS X Rs

[0120] As has already been specified, at least in part:

[0121] Qs: a size of the storage disk (in Bytes);

[0122] Cs: a dissipation coefficient (W / Byte), depending on the technology (rotating disk or SSD (for “Solid State Drive”);

[0123] Rs: a data replication factor, due to the architecture of the storage system (for example RAID) and other possible replicas.

[0124] The parameter Tu corresponds to a reference duration on which the estimate is projected, taking into account measurements with the software load considered.

[0125] The parameter En is associated with the network. It corresponds to the energy consumed by input / output accesses, estimated by multiplying a quantity of data exchanged (input and output) over the duration Ttf by unit energy. The estimation of this contribution is determined by the use of an average dissipation coefficient for transfers between “data centers” by fiber optic networks, according to the equation:

[0126] En~ QnxCn

[0127] With, as already specified, at least in part:

[0128] Q: a total quantity of data exchanged over the duration Tu;

[0129] Cn: a dissipation coefficient (J / Byte)

[0130] The operational contribution Cop; of the software load or operational carbon is expressed in g, Kg or Ton of CO2 equivalent. It is always calculated for a service consuming electricity in a given region, from an energy (in Wh or Joules) by a formula of the type:

[0131] Cop.= (E^Py^F.)

[0132] As already indicated, the parameter E^ is the energy consumed E; by the software load i.

[0133] Similarly, the Pue parameter is the inverse of the energy efficiency of the computer system.

[0134] Finally, the parameter Fc is the power to CO2 conversion factor.

[0135] The construction contribution Cc; is determined according to the equation: [OBÔ] Cc^C^x^xS^)

[0137] The parameter Ta is a time for allocating the “Hardware” resource to the “Software” resource of the computer system.

[0138] The parameter £ is a lifetime of the computer system.

[0139] The Sa parameter is a share of the “Hardware” resource allocated to the “Software” resource.

[0140] The parameter is a quantity of the total emissions due to the construction of the computer system. It is evaluated in tons of CO2. In the case where this parameter is not provided by the manufacturer, it is estimated based on the major components of the computer system according to the equation:

[0141] CAc = Co + O.lxN^ + O.O5x^ 0.15xN^„ +0.00139xQram

[0142] The C0 parameter corresponds to the carbon of peripheral components (power supply, chassis, cabling, motherboard, network cards, etc.). This value is of the order of 1 ton.

[0143] As already stated, the parameter corresponds to the number of CPU sockets.

[0144] The parameter NA(W corresponds to the number of storage hard disks.

[0145] The parameter Nsw / corresponds to the number of non-memory storage drives volatile.

[0146] The parameter N^. corresponds to the number of GPU units.

[0147] The Q parameter corresponds to the size of installed RAM.

[0148] Thus, the ecological indicator, energy consumed E;, operational contribution Copi, or construction contribution Cc;, detailed in the previous calculations can be entered in the form of functions f, g, h:

[0149] E,= (Pc+Pm+P,) x Tu + E„ = f(R, Mi) [OiSO] C0Pj = (£. x pUE x pj =

[0151] Ccj=(cvxixS„)= / i(s, Mi)

[0152] These functions are dependent:

[0153] - of the first set M; of parameters depending on the software load i. As it has already been indicated, this first set includes the parameter Tci CPU usage time, the parameter Lci CPU load, the parameter Tu of the reference duration, the parameter Ta of the allocation time of HW resource to SW resource, a parameter Qs of storage disk size, a parameter Qn of total quantity of data exchanged over the reference period Tu;

[0154] - of the second set R of parameters depending on the computing resource. As already indicated, this second set includes the parameter Pmin of minimum power consumed by a “thread”, the parameter Pmax of maximum power consumed by a “thread”, the parameter Nthr of number of “threads”, the parameter Qm of RAM size, the parameter Rs of replication factor, the parameter Ng of number of GPU units, a parameter Sa of quantity of allocated storage, the parameter L of lifetime, the parameter N / îtjW of the number of storage hard disks, the parameter of the number of non-volatile memory storage “drives”, the parameter * of the number of CPU sockets, the parameter Q of installed RAM size;

[0155] - of the third DC set of parameters dependent on the computer system. As already indicated, this third set includes the Pue parameter associated with the energy efficiency of the computer system, the Fc parameter of the power to CO2 conversion factor.

[0156] Depending on the hardware components of the processing system, other energy contributions may be added (specific co-processors, specific processing unit). In the examples as presented here, the basic hardware components are particularly described. However, the estimation technique which is the subject of the invention also makes it possible to take into account hardware energy consumption counters if they are available for certain components of the system.

[0157] The invention also allows the user to estimate a residual value of the ecological indicator resulting from an allocated but unused resource. This estimation includes:

[0158] In a step 1: an estimation process is executed N times with the load metrics and calculates Cop., Ce,-;

[0159] In a step 2: an estimation process is executed N times with the resource metrics and calculates Ea, Cop CcH;

[0160] In a step 3: residual prints are deduced by the following sums and differences:

[0161] E -EVNE. res

[0162] Cop^ = Copa- r^Cop. 101631 Cc„,, = Cc„- L" Ce,

[0164] In which the elements Ea, Cop^, Cca are determined from cumulative resource usage metrics Ma. These metrics are, for example:

[0165] Tca: a total CPU usage time or resource allocation time;

[0166] Lca: an average CPU load during Tca(%);

[0167] Tga: a total GPU usage time or GPU(s) allocation time;

[0168] Lga: an average GPU load during Tga(%);

[0169] Sa: an allocated storage quantity (B);

[0170] Qna: a quantity of data exchanged during Tci(B).

[0171] [Fig.5] illustrates the INF computing infrastructure according to a second embodiment of the invention in which the data processing device is split into a first REC module and a second CAL module.

[0172] The first REC module is adapted to receive the operating data Data(M; R, DC) from the computer system (SI) and to store them in a database (not shown). The first REC module is further adapted to communicate with a user interface module UI and the second CAL module.

[0173] Upon request from a user via the user interface module UI, the first REC module selects and transfers to the second CAL module the operating data relevant to this request. These operating data are then processed by the second CAL module and the results of this processing are transmitted to the user interface module UI via the first REC module. Upon receipt of these results, the user interface module is adapted to display them.

[0174] Alternatively, the first REC module calls the second CAL module each time operating data is received and stores the result of this processing in the database. Upon request from a user via the UI user interface module, the REC module sends the previously calculated data.

[0175] For example, these results can be presented in the form of a "heat map" comprising a plurality of squares, as illustrated in [Fig.7]. Each square can thus be a processing unit, a virtual machine, a GPU, a process, a software flow, a "thread". Each square also has a color. This color indicates an importance compared to the others according to the chosen metric, such as energy consumed, carbon usage emitted, carbon construction emitted, etc. It is possible to interact with each square via a selection, for example a selection via a mouse. With each selection, the user will have information on the part of the system involved. It thus becomes easier to visualize the complete system under different criteria to identify priority optimizations to be carried out on processing units, virtual machines, containers, etc.

[0176] Another variation of this representation is to be able to create temporal visualizations of the elements. For example, each row represents a server, and each column a given hour or a given day. The advantage is to be able to visualize the temporal variations of the metrics, on a large number of elements.

[0177] Another way to be able to analyze interactively is to use a "tree map" type graph as described in the link https: / / www.data-to-viz.com / graph / treemap.html. Such a graph is represented in [Fig.8]. In the same way, it is possible to use a "radial tree map" type graph as described in the link https: / / www.data-to-viz.com / graph / sunburst.html. represented in [Fig.9]. These graphs have the particularity of being able to present hierarchies from a root element to child elements, for example from a server, all virtual machines, then all containers, then all software processes or for example from an organization, projects, execution environments, virtual machines, containers.

[0178] The advantage of these representations is that they can vary the size of each element as well as its color to quickly identify, for example, virtual machines that emit the most carbon. The "radial tree map" type graph is more suitable for small hierarchies for a particular project or server. The "tree map" type graph is more suitable for larger systems. The advantage of this visualization is that it can show several elements of the hierarchy in order to more quickly identify the elements to be optimized. For example, a server and the virtual machines at the same time, while adapting their respective sizes according to the metric to be displayed.

[0179] [Fig.6] illustrates an IT infrastructure comprising a device for processing of data T according to a third embodiment.

[0180] In this embodiment, a SIM estimation module is adapted to interrogate the processing device T via a plurality of APIs APIi APIj..., APIm. By API (for “Application Programming Interface”), we mean a software interface which makes it possible to connect a software or a service to another software or service in order to exchange data and functionalities.

[0181] These APIs provide energy and carbon estimates for both the hardware part and for each software activity. They take as input the description of the processing system model as well as operating metrics allowing calculation for the hardware and software elements.

[0182] In order to simplify the description of the model, these APIs allow the use of predefined and qualified models and allow easier use of the SIM estimation module by users. For example, it is possible to make available predefined models of provider instances of a cloud such as AWS, GCP, Azure, Scaleway or Outscale. It is then possible to indicate the name of the instance type based on a nomenclature of the provider and information such as a memory size, a disk size, or a number of CPUs, GPUs if the instance type does not implicitly define it.

[0183] These APIs thus make it possible to carry out estimates in real time, a posteriori from past operating data, or in simulation from new configurations / data.

[0184] Once energy / carbon footprints can be dynamically estimated, contribution analyses and projections can be performed for different infrastructures, computing machines or locations with a view to optimizing these footprints for all or part of the hardware or software loads considered.

[0185] Decisions leading to an optimization action can be taken:

[0186] - after human analysis, possibly assisted by algorithm

[0187] - automatically, by various algorithms, including artificial intelligence.

[0188] Examples of optimization include:

[0189] - a group of software processes that underutilizes a computing resource may be reallocated to a resource of lower capacity but less energy-intensive and / or less expensive;

[0190] - a group of software processes to which a server located in a center is allocated data using a high-carbon electricity source can be redeployed on a similar server in another center supplied by less carbon-intensive electricity;

[0191] - optimization of a software process;

[0192] - moving software processes to new generations of hardware.

[0193] [Fig. 10] describes an iterative method for optimizing either the ecological performance (the energy consumption or the carbon emissions of the system). The basis of this method lies in the ability to know the state of the performance, the energy consumption or the carbon emissions using metrics that can be understood by an engineer, for example, the system load, the energy joules generated, the grams of co2eq emitted for use and construction. Using these metrics, optimizations to be carried out can then be identified, then, after completion, the iteration is repeated to continuously and iteratively improve the desired criterion. In order for all optimizations to be considered, it is necessary to have a complete and detailed evaluation of the entire system. This is made possible thanks to the processing method implemented by the processing device T.It is thus possible to estimate ecological performance by simulation, which makes it possible to estimate the impacts of an optimization before carrying it out. By carrying out several simulations, it is possible to choose the best optimization to carry out in order to achieve the set objective in a reduced time.

[0194] [Fig. 11] describes how it is possible to estimate the impact for better decision-making via simulations. For each action plan it is thus possible to carry out a simulation of the system which will deliver a very precise impact projection to the second, hour, day, month, or year on all the components of the system whether hardware or software while allowing the different impacts to be accumulated globally for a given system. Thus thanks to these different simulations, it is possible to make a choice on the optimization of the system to be carried out as a priority to achieve the objectives of either carbon reduction or energy consumption.

[0195] Thanks to these simulation capabilities, reduction plans allow users to have a very powerful means of analysis and to be able to estimate the impact, while remaining within the realm of possibility. For example, the reduction plan assumes the relocation of certain servers to another region, replacement with smaller servers thanks to the optimization of software activities on these servers, the relocation of software development activities to shared servers with minimal carbon emissions.

[0196] It is also possible to provide assistance, or even complete automation, of the optimization cycle using dedicated algorithms, for example using artificial intelligence. These algorithms will make it possible to propose infrastructure optimization options based on the criteria to be achieved, such as performance, cost, energy savings or carbon savings.

[0197] [Fig. 12] describes an example of a reduction plan carried out by simulation. It is thus possible to read that for 2000 servers generating 1121 Tonnes of carbon emissions (co2-eq) over one year, including the carbon of use and construction, the simulated reduction plan makes it possible to indicate a reduction to 966 Tonnes of carbon emissions (co2-eq) over the year. It also presents a reduction of 13.84% of carbon emissions if such a plan is carried out.

[0198] In a system with a small number of servers, the results of the estimations or simulations are easily visualized. In the context of a large system, the visualizations such as those proposed in Figures 7 to 9 are particularly suitable.

Claims

Claims

1. Method of processing data for determining a value of an ecological indicator (E;, Cop;, Cc;) of a computer system (SI), said computer system (SI) comprising an execution unit (UE) and at least one software load (SW i ; SSW i ; SSSW i) capable of being executed from said execution unit (UE), said method comprising: - a step of receiving operating data (Data) from the computer system (SI), said operating data comprising at least a first set (Mj) of parameters associated with an operation of the execution unit in connection with the execution of the software load (SW; ; SSW; ; SSSWi); - a step of calculating the value of the ecological indicator (E;, Cop;, Ce i) from at least one parameter of the first set (M;) of parameters.

2. A data processing method according to claim 1, wherein the operating data of the computer system comprises a second set (R) of parameters associated with an overall operation of the execution unit and a third set (DC) of parameters associated with the overall operation of the computer system.

3. Data processing method according to any one of claims 1 or 2, wherein the ecological indicator is chosen from a set of ecological indicators, said set of ecological indicators comprising at least: an energy consumed (Ei) by the software load (SW; ; SSW; ; SSSWi), an operational contribution (Copi) of the software load (SW; ; SSW; ; SSSWi), a construction contribution (Ce;) of the software load (SW; ; SSW; ; SSSWi).

4. 4. Data processing method according to claim 3, in which the consumed energy (Ei) is a function of at least one parameter of the first set (M;) of parameters and of at least one parameter of the second set (R) of parameters.

5. Data processing method according to any one of claims 3 or 4, wherein the operational contribution (Cop;) is a function of the consumed energy (E;) and at least one parameter of the third set (DC) of parameters.

6. 6. A data processing method according to any one of claims 3 to 5, wherein the construction contribution (Ce;) is function of at least one parameter from the first set (Mi) of parameters and at least one parameter from the second set (R) of parameters.

7. 7. A data processing method according to any one of claims 3 to 6, wherein the consumed energy (EO) is determined according to the equation:

7. Ei = ( Pc + Pm + Ps ) xTu + En, with Pc a CPU power, Pm a memory power, Ps a storage power; Tu a reference duration, En an energy consumed by input / output accesses.

8. 8. Data processing method according to any one of claims 3 to 7, wherein the operational contribution (Cop;) is determined according to the equation:

8. Cop = (Ej X PUE x Fc) with Pue an inverse of the energy efficiency of the computer system; Fc a power to CO2 conversion factor.

9. 9. A data processing method according to any one of claims 3 to 8, wherein the construction contribution (Ce;) is determined according to the equation:

9. Ce — (C x — XS ) with a Quantity of total emissions due to the construction of the computer system, Ta a time of allocation of Hardware resource to the Software resource of the computer system, A a lifetime of the computer system; Sa a share of Hardware resource allocated to the Software resource.

10. 10. Data processing method according to any one of claims 1 to 9, wherein the computer subsystem comprises N software loads executed from said execution unit (UE) in different time ranges, said method comprising a step of determining a residual value of the ecological indicator, said residual value being representative of a non-use of said execution unit (UE) over time.

11. 11. Data processing method according to any one of claims 1 to 10, in which the value of the ecological indicator determined for the software load (SW; ; SSWi; SSSWi) is displayed in a global visualization graph of the operation of all the software loads of the computer system.

12. 12. Data processing device for determining a value of an ecological indicator (E;, Cop;, CcO of an in- computer system, said computer system comprising an execution unit (UE) and at least one software load (SW; ; SSW; ; SSSWi ) executed from said execution unit (UE), said processing device (T) comprising: - a module for receiving (REC) operating data from the computer system, said operating data comprising at least a first set (Mj) of parameters associated with an operation of the execution unit in connection with the execution of the software load (SWi ; SSW; ; SSSW;); - a module for calculating (CAL) the value of the ecological indicator (E;, Copi, Ce;) from at least one parameter of the first set (M;) of parameters.

13. 13. Computer system comprising an execution unit (CPU) and at least one software load (SW; ; SSW; ; SSSWi) executed from said execution unit (UE), said computer system being able to transmit operating data of said computer system, said operating data comprising at least a first set (Mi) of parameters associated with an operation of the execution unit in connection with the execution of the software load (SW; ; SSW; ; SSSWi), at least one parameter of the first set (Mi) being able to be processed to calculate a value of an ecological indicator (E;, Cop;, Cci).

14. 14. A computer system according to claim 13, wherein the software load (SSW; ; SSSWi) is adapted to execute within another software load (SW; ; SSW;).

15. A computer program comprising program code instructions for executing the steps of a processing method for determining a value of an ecological indicator according to any one of claims 1 to 11, when said program is executed by a processor.

16. A computer-readable recording medium having recorded thereon a computer program comprising program code instructions for executing a decision support method according to any one of claims 1 to 11, when said program is executed by a processor.

Citation Information

Patent Citations

  • ENERGY CONSUMPTION MANAGEMENT FOR A COMPUTER PARK

    FR3010552A1

  • Green cloud computing recommendation system

    US20220035674A1

  • Method and system for carbon impact tracking

    US20230394600A1