Information processing device, information processing method, and program
The information processing device addresses the challenge of managing power consumption and emissions in HPC systems by calculating emissions per job and optimizing scheduling based on renewable energy, achieving precise environmental load management and renewable energy visualization.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-03
- Publication Date
- 2026-03-12
AI Technical Summary
Conventional technologies are inadequate in managing power consumption and reducing greenhouse gas emissions in High Performance Computing (HPC) systems used for AI and simulations, particularly due to increased energy demands and environmental impact.
An information processing device that acquires component information and power consumption data to calculate greenhouse gas emissions per job, enabling precise environmental load management and dynamic job scheduling based on renewable energy availability.
Enables precise environmental load management and optimization of job scheduling to reduce greenhouse gas emissions in HPC systems, allowing for quantification and visualization of renewable energy usage at individual job levels.
Smart Images

Figure JP2025031105_12032026_PF_FP_ABST
Abstract
Description
Information processing device, information processing method, and program
[0001] The present invention relates to an information processing device, an information processing method, and a program.
[0002] Conventionally, there are technologies for managing power consumption in computers such as HPC (High Performance Computing) systems used in AI and simulations (see, for example, Patent Document 1).
[0003] JP 2017-45381 A
[0004] However, in recent years, the power consumption of HPC systems used for AI and simulations has increased dramatically due to improvements in the performance of GPUs and accelerators. Furthermore, there is a need for some mechanism to optimize power consumption and reduce greenhouse gas emissions such as CO2 emissions in order to reduce environmental impact, but conventional technologies, including the technology described in Patent Document 1, are unable to adequately meet these demands.
[0005] The present invention has been made in consideration of these circumstances, and aims to provide a mechanism for reducing greenhouse gas emissions from HPC systems and the like used for AI and simulations.
[0006] To achieve the above objective, an information processing device according to one aspect of the present invention is an information processing device that can communicate with a computer on which a processing unit is implemented, and comprises: a component information acquisition means that, when the computer executes a job, acquires from the computer at least one of the components used by the job and the individual components of the components of the computer as component information, and at least one of the power consumption of the components of the computer and the energy consumed from the power consumed as component consumption information; and an emission calculation means that calculates greenhouse gas emissions per job based on the component information and the component consumption information.
[0007] An information processing method and a program according to one aspect of the present invention are a method and a program corresponding to an information processing device according to one aspect of the present invention.
[0008] According to the present invention, it is possible to provide a mechanism for reducing greenhouse gas emissions from HPC systems used in AI and simulations.
[0009] 2 is a diagram showing an overview of the service that can be realized by an information processing system to which a service provider server according to an embodiment of the information processing device of the present invention is applied. FIG. 3 is a diagram showing an example of the configuration of an information processing system to which a service provider server according to an embodiment of the information processing device of the present invention is applied. FIG. 4 is a block diagram showing an example of the hardware configuration of the service provider server in the information processing system of FIG. 2. FIG. 5 is a functional block diagram showing an example of the functional configuration of the service provider server of FIG. 3 that constitutes the information processing system of FIG. 2. FIG. 6 is a diagram showing a hierarchical structure from a workflow to an execution unit. FIG. 7 is a diagram showing a renewable energy ratio. FIG. 8 is a diagram showing CO2 emissions. FIG. 9 is a diagram showing a job scheduling control example 1. FIG. 10 is a diagram showing a job scheduling control example 2. FIG. 11 is a diagram showing an example of a job details display screen. FIG. 12 is a diagram showing an example of a time series graph display screen. FIG. 13 is a diagram showing an example of a multi-axis evaluation screen.
[0010] Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
[0011] First, an overview of a service (hereinafter referred to as "this service") that can be realized by an information processing system (see FIG. 2 described later) to which a service provider server according to an embodiment of the information processing device of the present invention is applied will be described with reference to Fig. 1. Fig. 1 is a diagram showing an overview of this service that can be realized by an information processing system to which a service provider server according to an embodiment of the information processing device of the present invention is applied.
[0012] This service uses a new mechanism to reduce greenhouse gas emissions from HPC systems used for AI and simulations in computing environments such as data centers and cluster systems.
[0013] 1 shows a service provider server 1, a group of computing servers 2G (including computing servers 2-1 to 2-n) as a data center, a power supply 3, and an external device 4. This service enables precise calculation of greenhouse gas emissions for each individual job, rather than the conventional environmental load management on a server-by-server or system-by-system basis.
[0014] In step S1, job J001 is submitted to the computation server group 2G. For example, job J001 is specified to use eight nodes (computation servers 2-1 to 2-8), 256 CPU cores, and 64 GPUs. In step S2, the service provider server 1 obtains component information (e.g., usage and individual identification information for the first CPU, second CPU, first to eighth GPUs, and first to eighth memories of computation server 2-1) used by job J001 from the computation server group 2G. In step S3, the service provider server 1 obtains power consumption information for each component (e.g., 0.3 kW for the first CPU and 0.5 kW for the first GPU of computation server 2-1) from the computation server group 2G. This power consumption information is measured directly from, for example, publicly known registers or drivers published by hardware manufacturers.
[0015] In step S4, the service provider server 1 calculates the greenhouse gas emissions (e.g., 5.625 kg-CO2) for each job J001 based on the acquired component information and power consumption information. At this time, for example, in an environment where multiple jobs are being executed simultaneously, a process is executed to apportion and estimate the power consumption values measured by the sensors according to the resource usage ratio of job J001. Furthermore, the generation type information of the power supplied from the power source 3 to the computing server group 2G (e.g., 40% renewable energy, 60% non-renewable energy) is also taken into consideration, and the renewable energy ratio of job J001 is also calculated at the same time.
[0016] In step S5, the service provider server 1 transmits the calculated environmental load information for job J001 (greenhouse gas emissions, renewable energy ratio, power consumption, etc.) to the external device 4. In step S6, the external device 4 displays detailed results. Specifically, for example, it displays the average power consumption of job J001 (2.5 kW), energy consumption (12.5 kWh), CO2 emissions (5.625 kg-CO2), and resources used (8 computing servers, 256 CPU cores, 64 GPUs).
[0017] This enables precise environmental load management that was not possible with conventional server-level or system-level methods. Specifically, data center operators (operators of the 2G computing server group) can understand the environmental load of individual jobs like job J001, and manufacturing companies can quantify the environmental load during product design.
[0018] Furthermore, in this service, the service provider server 1 can estimate at least one of the power consumption and energy consumption of a job based on component information and component consumption information, and output information showing the estimation result as job consumption information. For example, if four jobs are running simultaneously on the computing server 2-1, an estimation process is performed to allocate the power consumption of the entire computing server group 2G according to the resource usage ratio of each job (e.g., job J001 uses 25%, job J002 uses 50%).
[0019] Furthermore, each component of the computation servers 2-1 to 2-n includes at least one of a CPU, memory, and accelerator. Specifically, for example, computation server 2-1 is equipped with two CPUs, eight GPUs, and eight memories, which are managed as the main computing resources. By explicitly identifying the GPU, which is particularly important in recent AI calculations, greenhouse gas management compatible with HPC systems can be achieved. In this specification, the term "accelerator" refers to dedicated hardware other than a CPU that is additionally installed on a machine equipped with a CPU. An accelerator is a dedicated processor designed to speed up or optimize specific computational processing. Among accelerators, those for graphics applications that are provided with middleware and software such as graphics drivers are called GPUs (Graphics Processing Units). However, accelerators that cannot be used for graphics applications are often used in AI and simulation execution. Examples include neural processing units (NPUs) dedicated to machine learning, field-programmable gate arrays (FPGAs), which are programmable logic circuits, processors dedicated to physics calculations, and chips dedicated to encryption processing. The present invention can calculate power consumption and greenhouse gas emissions on a per-job basis for all of these various accelerators. This enables comprehensive environmental load management in the various dedicated hardware environments used in current HPC systems and data centers.
[0020] Furthermore, in this service, a job can be at least one of the following: a workflow, job, job step, process, thread, task, pod used in a container on the computing server group 2G, and workload of a virtual machine running on the host OS. For example, if job J001 is decomposed into processes P001-001, P001-002, and P001-003, the environmental impact of each process is calculated individually. This allows for support of various execution units, enabling greenhouse gas management in computing environments that go beyond the traditional job concept and include container technology and VM technology.
[0021] Additionally, in this service, the service provider server 1 receives information on the generation type of power supplied from the power source 3 to the computing server group 2G, and can calculate the power consumption or renewable energy ratio of the energy consumed for a job based on the job consumption information. Specifically, for example, if the power source 3 supplies information of "40% renewable energy, 60% non-renewable energy," the actual renewable energy ratio (e.g., 100% or 20%) is dynamically allocated according to the renewable energy priority setting of job J001. This allows visualization of renewable energy consumption on a job-by-job basis, making it possible to quantify environmental value at the individual computing processing level in ESG (Environment, Society, and Governance) management and carbon neutrality efforts.
[0022] Furthermore, in this service, the service provider server 1 can also receive predicted values for information on the generation type of electricity supplied from the power source 3 to the computation server group 2G and calculate predicted values for the renewable energy ratio. For example, the job execution schedule is optimized based on predicted information from weather forecast data for solar power generation in the power source 3 that "renewable energy supply will increase from 10:00 to 14:00 tomorrow." This makes it possible to predict the environmental load at the planning stage before job execution using the renewable energy supply prediction function, enabling optimal scheduling.
[0023] Furthermore, in this service, the service provider server 1 can control the execution order or destination of at least one of the components of the computation server group 2G, including workflows, jobs, job steps, processes, threads, tasks, and pods used in containers, based on an index using a predicted value of the renewable energy ratio. Specifically, for example, when job J11 with a renewable energy priority of 80 and job J51 with a renewable energy priority of 50 are waiting to be executed, job J11 is executed preferentially in accordance with the timing of an increase in the renewable energy supply, and job J51 is postponed. This allows dynamic job scheduling that takes environmental load into consideration to automatically allocate optimal resources according to the renewable energy supply situation.
[0024] Furthermore, in this service, the service provider server 1 can change the execution order or destination of the execution unit when at least one of the pods used in a workflow, job, job step, process, thread, task, or container is queued. Specifically, for example, if job J32 is submitted at the scheduled execution time of 1:10 but the renewable energy supply at that time is insufficient, dynamic control is performed to delay execution until 1:10 and start execution when the renewable energy supply becomes sufficient. As a result, the dynamic queue control function can dynamically change the execution order to an optimal order according to the real-time renewable energy supply situation, even when jobs are waiting to be executed.
[0025] Next, the configuration of an information processing system that realizes the provision of the above-described service, i.e., an information processing system to which a service provider server according to an embodiment of the information processing device of the present invention is applied, will be described with reference to Fig. 2. Fig. 2 is a diagram showing an example of the configuration of an information processing system to which a service provider server according to an embodiment of the information processing device of the present invention is applied.
[0026] 2 is configured to include a service provider server 1, a computing server group 2G, a power source 3, and an external device 4. The service provider server 1, the computing server group 2G, the power source 3, and the external device 4 are connected to each other via a network N such as the Internet.
[0027] Service provider server 1 is an information processing device managed by the service provider of this service (Figure 1). Service provider server 1 performs various processes to realize this service while communicating as appropriate with the computing server group 2G, power supply 3, and external device 4. Computing server group 2G consists of multiple computing servers 2-1 to 2-n. Each of computing servers 2-1 to 2-n is a computer that performs high-performance computing processing such as AI and simulation, and consists of supercomputers, cluster systems, workstations, etc. Power supply 3 is a power supply device that supplies power to computing server group 2G, and supplies power from renewable energy and non-renewable energy sources. External device 4 is an information processing device that displays or uses the results of this service, and consists of smartphones, tablets, personal computers, etc. Hereinafter, when it is not necessary to distinguish computing servers 2-1 to 2-n individually, they will be collectively referred to as "computing server group 2G".
[0028] Figure 3 is a block diagram showing an example of the server hardware configuration in the information processing system shown in Figure 2.
[0029] The service provider server 1 comprises a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM (Random Access Memory) 13, a bus 14, an input / output interface 15, an input unit 16, an output unit 17, a storage unit 18, a communication unit 19, and a drive 20.
[0030] The CPU 11 executes various processes according to programs recorded in the ROM 12 or programs loaded from the storage unit 18 into the RAM 13. The RAM 13 also stores data and the like necessary for the CPU 11 to execute various processes.
[0031] The CPU 11, ROM 12, and RAM 13 are interconnected via a bus 14. An input / output interface 15 is also connected to this bus 14. An input / output interface 15 is connected to an input unit 16, an output unit 17, a storage unit 18, a communication unit 19, and a drive 20.
[0032] The input unit 16 is configured with, for example, a keyboard and is used to input various types of information. The output unit 17 is configured with, for example, a display such as a liquid crystal display, a speaker, and the like and outputs various types of information as images and sounds. The storage unit 18 is configured with, for example, a dynamic random access memory (DRAM) and is used to store various types of data. The communication unit 19 communicates with other devices (for example, the computing server group 2G, power source 3, and external device 4 in FIG. 2 ) via a network N including the Internet.
[0033] Removable media 21, such as a magnetic disk, optical disk, magneto-optical disk, or semiconductor memory, is appropriately attached to the drive 20. Programs read from the removable media 21 by the drive 20 are installed in the storage unit 18 as needed. The removable media 21 can also store various data stored in the storage unit 18 in the same way as the storage unit 18.
[0034] Although not shown in the diagram, the computing server 2 and external device 4 in Figure 2 can have essentially the same configuration as the hardware configuration shown in Figure 3. Therefore, a description of the hardware configuration of the computing server 2 and external device 4 will be omitted.
[0035] Through the cooperation of various hardware and software components that make up the information processing system in Figure 2, including the service provider server 1 in Figure 3, various processes for providing the service in Figure 1 can be executed.
[0036] FIG. 4 is a functional block diagram showing an example of the functional configuration of the service provider server of FIG. 3 in the information processing system of FIG.
[0037] 4 , a component information acquisition unit 51, an emission amount calculation unit 52, a job consumption amount estimation unit 53, a renewable energy ratio calculation unit 54, and an execution control unit 55 function in the CPU 11 of the service provider server 1. In addition, a component information DB 71, a consumption amount information DB 72, a job information DB 73, a power source information DB 74, and an emission amount DB 75 are provided in one area of the storage unit 18 of the service provider server 1.
[0038] When the computation server 2 executes a job, the component information acquisition unit 51 acquires, from the computation server 2, at least one of information on the quantity of components used by the job and the individual components of the components as component information, and at least one of information on the power consumption of the components of the computation server 2 and the energy consumption derived from the consumed power as component consumption information. The acquired component information is stored in the component information DB 71, and the component consumption information is stored in the consumption information DB 72. Specifically, for example, if the job J001 uses 8 nodes, 256 CPUs, and 64 GPUs on the computation server 2-1, the component information acquisition unit 51 acquires this component information and power consumption data of each component acquired from known registers and drivers.
[0039] The emission amount calculation unit 52 extracts component information from the component information DB 71 and component consumption amount information from the consumption amount information DB 72, and calculates greenhouse gas emissions for each job based on this information. The calculated greenhouse gas emissions are stored in the emission amount DB 75. This enables precise environmental load management that was previously impossible on a server-by-server or system-by-system basis. Specifically, for example, the emission amount calculation unit 52 calculates greenhouse gas emissions of 5.625 kg-CO2 for job J001, and quantifies the environmental load at the individual job level.
[0040] The job consumption calculation unit 53 extracts component information from the component information DB 71 and component consumption information from the consumption information DB 72. Based on this information, it calculates at least one of the job's power consumption and energy consumption, and outputs information showing the calculation result as job consumption information. Specifically, the job consumption calculation unit 53 can obtain the power consumption for each CPU core (for example, ID = 0 to 31 on a 32-core machine) using known registers, drivers published by hardware manufacturers, or known OSS, and calculate the power consumption per job by accumulating the power consumption of the cores used by the job. The job consumption calculation unit 53 stores the output job consumption information in the job information DB 73. This makes it possible to accurately identify the environmental load of individual jobs in an environment where multiple jobs are executed simultaneously. Specifically, for example, if four jobs are running simultaneously on computing server 2-1, the job consumption estimation unit 53 performs an estimation process to allocate the total power consumption of the computing server group 2G according to the resource usage ratio of each job, and calculates the average power consumption of job J001 to be 2.5 kW and the energy consumed to be 12.5 kWh.
[0041] The renewable energy ratio calculation unit 54 extracts information on the type of electricity supplied to the computing server group 2G from the power source information DB 74, extracts job consumption information from the job information DB 73, and calculates the renewable energy ratio in the power consumption or energy consumption for each job based on this information, and stores the calculation result in the power source information DB 74. This makes it possible to quantify the environmental value at the individual calculation processing level for ESG management and carbon neutrality initiatives by visualizing the amount of renewable energy used on a job-by-job basis. Specifically, for example, the renewable energy ratio calculation unit 54 calculates the actual renewable energy ratio for job J001 according to the renewable energy priority, based on the information that "40% renewable energy, 60% non-renewable energy" is supplied from power source 3, and further enables optimal scheduling in the future by calculating a predicted value.
[0042] The execution control unit 55 extracts a predicted value of the renewable energy ratio from the power supply information DB 74, and based on an index using this predicted value, controls the execution order or destination of at least one of the components of the computation server 2, including workflows, jobs, job steps, processes, threads, tasks, and pods used in containers, on the computation server 2, and stores the control results in the job information DB 73. This enables dynamic job scheduling that takes environmental load into consideration, automatically allocating resources optimally according to the renewable energy supply situation. Specifically, for example, when job J11 with a renewable energy priority of 80 and job J51 with a renewable energy priority of 50 are waiting to be executed, the execution control unit 55 prioritizes the execution of job J11 in accordance with the timing of an increase in the renewable energy supply amount and postpones the execution of job J51. Furthermore, for example, the execution control unit 55 dynamically changes the execution order of queued jobs, such as job J32, to optimally control the execution order according to the real-time renewable energy supply situation.
[0043] The display control unit generates a display screen having a time axis and a power consumption axis, displays identification information for job J001, etc., at positions based on the values of the time axis and the power consumption axis, and displays at least one of the total power consumption of multiple jobs and the allowable power consumption of the entire system. Specifically, the display control unit obtains the execution time and power consumption information of each job from the job information DB 73 and the allowable power consumption of the entire system from the power supply information DB 74, and generates this information as a graphical display screen with time and power consumption as axes. For example, the horizontal axis represents time and the vertical axis represents power consumption, and each job J001, J002, J003, etc. is displayed at a coordinate position corresponding to the execution time period and power consumption. In addition, the display control unit displays the total accumulated power consumption of multiple jobs executed in the same time period on a graph, and displays the allowable power consumption of the entire system or the allowable power consumption derived from renewable energy as a baseline, allowing the user to visually grasp the comparison between the current consumption situation and the allowable amount. The display control unit transmits the generated display screen information to the output unit 17 and displays it on a display or the like.
[0044] Figure 5 shows a hierarchical structure from workflow to execution unit. As shown in Figure 5, this embodiment supports a variety of execution units, enabling greenhouse gas management in a computing environment that includes container technology and VM technology, going beyond the conventional job concept. Specifically, for example, the workflow is hierarchically broken down from the highest level to jobs, job steps, processes, threads, and tasks, and further includes the workloads of containers, pods, and virtual machines. This hierarchical structure allows the component information acquisition unit 51 to acquire component information at each execution unit level, and the emission calculation unit 52 to calculate greenhouse gas emissions at each level. In addition, the execution control unit 55 performs dynamic control of the execution order and execution destination at any level of this hierarchical structure. Each execution unit in Figure 5 corresponds to the workloads of workflows, jobs, job steps, processes, threads, tasks, pods used in containers, and virtual machines running on the host OS, enabling hierarchical management from optimizing the environmental load of the entire workflow to precise control at the smallest unit, the task level.
[0045] Figure 6 shows a comparison of renewable energy ratios. In the conventional method, the ratio of 40% renewable energy and 60% non-renewable energy supplied to the data center (2G computing server group) was evenly distributed to all jobs. In contrast, in this embodiment, the renewable energy ratio calculation unit 54 enables flexible allocation, such as allocating 100% renewable energy to some jobs (jobs J11 and J32) and 20% to other jobs according to priority. This allows businesses to provide high value-added services as computing resources that comply with the SDGs, and enables them to set a higher price for these jobs in cloud services as having limited characteristics. Specifically, if the entire computing server group 2G is supplied with 40% renewable energy, the conventional method would result in all eight jobs (job IDs 11, 12, 21, 22, 31, 32, 41, and 42) uniformly using 40% renewable energy. However, in this embodiment, the execution control unit 55 controls the execution of high-priority jobs IDs 11 and 32 using 100% renewable energy, while the remaining six jobs use 20% renewable energy, thereby achieving differentiation while maintaining the total amount of renewable energy used. This allocation control is automatically performed by the renewable energy ratio calculation unit 54 based on power generation type information obtained from the power information DB 74 and job priority information stored in the job information DB 73.
[0046] Figure 7 shows a comparison of CO2 emissions. In the conventional method, the power source's CO2 emission coefficient of 1.0 kg-CO2 / kWh was evenly distributed to all jobs, resulting in a CO2 emission of 0.125 kg-CO2 / kWh for each job. In contrast, in this embodiment, the emission calculation unit 52 allows differentiation by setting the CO2 emission of some jobs to 0.00 kg-CO2 / kWh and other jobs to 0.20 kg-CO2 / kWh based on priority. Jobs with low greenhouse gas emissions offer high added value to businesses as computational resources that comply with the SDGs, allowing them to be priced higher as exclusive features in cloud services. In a detailed calculation example, if the CO2 emission coefficient of the entire computation server group 2G is 1.0 kg-CO2 / kWh, the conventional method would allocate 0.125 kg-CO2 / kWh to each of the eight jobs. In contrast to this, in this embodiment, the emission calculation unit 52 sets the priority jobs (IDs 11, 41, and 32) to 0.00 kg-CO2 / kWh and the other jobs to 0.20 kg-CO2 / kWh based on the job-specific power consumption information acquired from the component information DB 71 and the consumption amount information DB 72 and the renewable energy allocation information from the power source information DB 74, thereby making it possible to create environmental value at the individual job level while maintaining the total CO2 emissions. The calculation results are stored in the emission DB 75 and are used for display on the external device 4 via the output unit 17 and for the business's environmental load assessment.
[0047] FIG. 8 illustrates a job scheduling control example 1. The execution control unit 55 dynamically controls the execution timing of each job J11, J12, J21, etc., in response to fluctuations in the amount of renewable energy supply along the time axis. Jobs with high renewable energy priority are preferentially executed during times when renewable energy supply is abundant, while the execution order of low-priority jobs is adjusted as needed. In this embodiment, at time A (00:00), the amount of renewable energy is sufficient, and job 11 (priority 80) begins execution using renewable energy. At time B (01:10), due to a decrease in the amount of renewable energy, job 32 (priority 80) and job 11 use renewable energy proportionally based on their power consumption ratio. At time C, due to an increase in the amount of renewable energy, job 32 uses 4 kW and job 11 uses 2 kW from renewable energy. The execution control unit 55 calculates optimal allocation in real time based on the renewable energy supply forecast value acquired from the power source information DB 74 and the job priority information from the job information DB 73, and executes proportional allocation control based on the priority ratio (80:50:100=32:15:120) at time G. This dynamic control achieves both environmental load optimization and calculation efficiency.
[0048] More specifically, as shown in FIG. 8 , this embodiment describes an example in which ten jobs, from job ID 11 to job ID 52, are executed, and renewable energy-derived power consumption is dynamically allocated based on the renewable energy priority of each job. As a prerequisite for this embodiment, each job is assigned to the calculation server 2 at the start time shown, and the end time shown in the table assumes that the job has started without any problems. The renewable energy priority of each job can be accepted by the execution control unit 55 (see FIG. 4 ). In this example, if a renewable energy priority is specified, the job is executed taking the renewable energy priority into consideration. However, the policy set in this system is to execute jobs sequentially whenever possible, and jobs do not necessarily have to be executed using renewable energy. Specifically, the emission calculation unit 52 (see FIG. 4 ) can acquire job information when a job is submitted, and can also accept the degree and numerical value of the renewable energy priority if one is specified. In this example, the renewable energy priority was specified as 80 for job IDs 11 and 32, 50 for job ID 51, and 100 for job ID 52. FIG. 8 shows jobs and renewable energy amounts according to time, with the renewable energy amounts displayed as power consumption derived from renewable energy. The computation server group 2G is supplied with not only renewable energy-derived power sources 3 but also non-renewable energy power sources 3, and the total of both is sufficient to execute the scheduled jobs. The renewable energy-derived power sources can be seen to change over time in the graph displayed by the renewable energy amount in FIG. 8. At time A (start time 00:00), jobs with job IDs 11, 12, and 21 are executed.
[0049] At this time, job ID 11 has a renewable energy priority of 80, and prioritizes the use of renewable energy-derived power sources. At time 00:00, a sufficient amount of renewable energy is secured for the execution of job ID 11, and job ID 11 is executed using renewable energy. The remaining renewable energy-derived power source is used by jobs IDs 12 and 21. After time A, jobs IDs 22 and 31 are executed. Jobs IDs 22 and 31 are executed using the renewable energy-derived power source not used by job ID 11 or non-renewable energy power sources. At time B, the amount of renewable energy decreases, and execution of job ID 32 begins. Job ID 32 has the same renewable energy priority of 80 as job ID 11, and both jobs consume renewable energy power sources in accordance with the proportion of power consumption of the jobs. As a specific example, when job ID 32 consumes 4 kW, job ID 11 consumes 2 kW, and job ID 11 consumes 3 kW of renewable energy, job ID 32 consumes 2 kW and job ID 11 consumes 1 kW from renewable energy. Jobs ID 32 and ID 11 can cover their shortfalls from non-renewable energy. Thereafter, jobs ID 41 and ID 42 begin execution. At time C, the amount of renewable energy increases, and when the supplied renewable energy is 10 kW, job ID 32 uses 4 kW and job ID 11 uses 2 kW from renewable energy, with the remaining renewable energy being used by other jobs currently running. When job ID 32 ends at time D, job ID 11 covers 2 kW of the 10 kW of supplied renewable energy from renewable energy, with the remaining renewable energy being used by other jobs currently running. At time E, job ID 12 ends, and job ID 51 begins. Job ID 51 has a renewable energy priority of 50, and job ID 11 (renewable energy priority 80) covers 2 kW from renewable energy, and then prioritizes the use of the remaining renewable energy, using 1.5 kW. At time F, job ID 52 begins. Job ID 52 has a renewable energy priority of 100 and uses 6 kW from renewable energy. At time G, the amount of renewable energy is reduced to 5 kW, and job ID 31 ends. At this time, jobs IDs 11, 51, and 52 are being executed with renewable energy priorities of 80, 50, and 100, and are using 2, 1.5, and 6 kW, respectively.The amount of renewable energy used by each job can be allocated in the following proportions: 80 × 2 : 50 × 1.5 : 100 × 6 = 160 : 75 : 600 = 32 : 15 : 120. Jobs IDs 11, 51, and 52 can use 0.96, 0.45, and 3.59 kW of renewable energy, respectively. Job ID 11 finishes at time H, job ID 51 finishes at time I, and job ID 52 finishes at time J. The amount of renewable energy used by the jobs currently running at each time can be calculated in the same manner.
[0050] FIG. 9 is a diagram illustrating a second example of job scheduling control. An example of changing the priority of a job according to the renewable energy rate will be described with reference to FIG. 9 . In this example, consider the case where the same job as in FIG. 8 is prepared. After receiving a job submission instruction from the external device 4, the service provider server 1 can use the execution control unit 55 to control whether to actually allow the computation server group 2G to execute the job immediately or while the job is waiting its turn (queued). This allows, for example, the job execution order to be changed according to the renewable energy situation. In this example, the service provider server 1 accepts a setting that, if a renewable energy priority is specified for a job, the job is always executed using renewable energy. Based on this policy, the execution control unit 55 changes the job execution order. Specifically, the behavior is the same as the example in FIG. 8 up to time B. At time B, job ID 32 was scheduled to be executed, but at that time, the amount of renewable energy sufficient to execute job ID 32 was not provided, so job ID 32 is not executed at time B. The amount of renewable energy required for the job may be determined by inputting a fixed value estimated in advance, by citing values from similar jobs in the past, or by executing the job for a short period of time to confirm the amount. Here, it is assumed that the average power consumption per CPU core and per GPU based on past performance data is recorded in advance in the job information DB 73. The renewable energy ratio calculation unit 54 estimates the power consumption during job execution based on this information and the number of CPU cores and GPUs used by job ID 32. At time B', when a sufficient amount of renewable energy is secured, the execution control unit 55 starts execution of job ID 32. In this example, similarly for jobs IDs 51 and 52, when a job with a specified renewable energy priority is requested, it is checked whether a sufficient amount of renewable energy is secured for execution. If a sufficient amount of renewable energy is secured, the job is executed. If a sufficient amount of renewable energy is not secured, the job is not executed. The job is executed when the amount of renewable energy is periodically monitored and becomes executable.As a regular observation, a method can be taken in which the execution control unit 55 periodically calculates the amount of available renewable energy, such as every 10 seconds, and compares it with the estimated power consumption for the target job. In such a case, for example, from time G to time H', there may be a time period in which the amount of renewable energy is not used up, or there may be a time period in which no job is executed even though there are jobs waiting to be executed.
[0051] FIG. 10 shows an example of a job details display screen. For job J001, environmental impact indicators such as average power consumption of 2.5 kW, energy consumption of 12.5 kWh, and CO2 emissions of 5.625 kg-CO2 are displayed, along with the resources used (8 computing servers, 256 CPU cores, 64 GPUs). Furthermore, for each process (P001-001, P001-002, P001-003) that constitutes the job, the individual environmental impact indicators and resources used are displayed in detail. This display function is realized through the output unit 17 based on information extracted by the emission calculation unit 52 and the job consumption estimation unit 53 from the emission DB 75 and the job information DB 73. In addition, the general information for job J001 in the upper section displays the job ID: j001, along with the job's unique identifier, the resources used (e.g., CPUs and GPUs), and environmental impact indicators, all on a single screen. The bottom row displays detailed information for three processes (Process ID: j001-001, power consumption 2.3 kW, energy 3.2 kWh, CO2 emissions 1.3 kg-CO2; Process ID: j001-002, power consumption 2.7 kW, energy 3.3 kWh, CO2 emissions 1.5 kg-CO2; Process ID: j001-003, power consumption 2.5 kW, energy 6.0 kWh, CO2 emissions 2.825 kg-CO2) side by side, clearly showing the relationships (nesting) between the display units.
[0052] FIG. 11 is a diagram showing an example of a time-series graph display screen. The horizontal axis represents time, the vertical axis represents power consumption, and two line graphs are displayed: total power consumption and renewable energy-derived power consumption. The execution period of each job J001 to J008 is displayed as a bar, and the execution status (100% renewable energy, renewable energy + non-renewable energy, 100% non-renewable energy, delayed execution, execution after waiting) is distinguished by color and symbol. This allows for a clear visual understanding of the environmental load status over time. This display function is realized through the output unit 17 based on the time-series data extracted by the renewable energy ratio calculation unit 54 and the execution control unit 55 from the power supply information DB 74 and the job information DB 73. The display also clearly shows that job 001 is powered by a renewable energy source, job 002 is also powered by renewable energy, job 003 is a mix of renewable and non-renewable energy, job 004 is not executed due to a lack of power sources and is executed late as job 004, and job 007 can be executed using non-renewable energy, but will wait and be executed as job 007 after renewable energy is secured according to the set policy.
[0053] FIG. 11 shows an example screen displaying the relationship between job execution status and power consumption over time. This display screen displays a two-axis graph with time on the horizontal axis and power consumption on the vertical axis. Two lines are displayed for power consumption: (1) the total of renewable and non-renewable energy sources, and (2) renewable energy only. The power consumption values may be past performance data or forecasts obtained using publicly known tools. For example, (2) renewable energy only is a power source derived from solar power generation, and its supply varies over time. When (2) changes, the total power supply from the general grid is supplemented, thereby maintaining a stable trend in (1). This example shows the execution of jobs 001 to 008. Job 001 is powered by a renewable energy source, and job 002 is also powered by a renewable energy source. Job 003 is powered by both renewable and non-renewable energy sources. Job 004 is not executed due to a lack of total power sources, but is executed as job 004' when the total power sources are sufficient. This display not only identifies the original job 004, but also indicates with symbols that the start time of a job like job 004' was postponed due to a power shortage, thereby indicating whether the job was executed smoothly. Jobs 005 and 006 are powered by both renewable and non-renewable energy sources. Job 007 could be executed using a non-renewable energy source, but the job's setting policy prevented it from being executed using non-renewable energy. Instead, it was executed as job 007' when renewable energy was secured. Job 008 is powered by a non-renewable energy source. The above display makes it easy to see when and to what extent each job is using renewable energy, enabling smooth operation of the computation server group 2G (data center), computation server 2, and jobs with an emphasis on energy. In particular, by displaying the time, it can also be used for daily operational monitoring.
[0054] Figure 12 shows an example of a multi-axis evaluation screen. Three graphs—time x computational resource usage, time x CO2 emissions, and computational resource usage x CO2 emissions—are displayed, with arrows representing the correlation between each graph. The chronological order of data points is color-coded, enabling a multifaceted evaluation of resource usage and environmental impact. This display function is realized through the output unit 17, integrating multidimensional data extracted from each database by the emissions calculation unit 52, job consumption estimation unit 53, and renewable energy ratio calculation unit 54. The time x computational resource usage graph in the upper left displays job execution time and resource usage status, the time x CO2 emissions graph in the upper right displays the change in environmental impact over time, and the computational resource usage x CO2 emissions scatter plot in the lower center displays the correlation between the two. This visualizes the tendency for higher resource usage to result in increased CO2 emissions, as well as the effect of using renewable energy to reduce CO2 emissions with the same amount of resources.
[0055] In the embodiment shown in Figure 12, a display method is provided that allows users to grasp the relationships between time × CO2 emissions, time × computing resource usage, and computing resource usage × CO2 emissions on a single screen. In addition to the display of time × computing resource usage, which is commonly used in the past, the relationships between time × CO2 emissions and computing resource usage × CO2 emissions are also displayed simultaneously. This makes it easy to grasp the degree of achievement in operational policies that aim to utilize resources as much as possible, or operational policies that aim to reduce environmental impact as much as possible while using resources above a certain level, and is effective in the operation of the 2G computing server group. Computing resource usage is basically the amount of resources allocated to a job, but it may also be the amount of resources actually used from the allocated resources. In many cases, it is thought that the amount of resources used and CO2 emissions are correlated, but more specifically, due to various factors such as the operating amount of each component and the temperature of the chip, a perfect correlation is not achieved, so it is desirable to have a situation that can be easily grasped by visualizing it. By displaying the results for any given time at a position determined by two pieces of information—computational resource usage × CO2 emissions—and then indicating the chronological order of the results using symbols or colors, the environmental health of the 2G computing server cluster can be easily grasped. Note that CO2 emissions can be replaced with other indicators equivalent to environmental load indicators such as power consumption or energy consumption, and the graph can be a line graph, bar graph, pie chart, etc.
[0056] Although one embodiment of the present invention has been described above, the present invention is not limited to the above-described embodiment, and modifications, improvements, etc. within the scope of achieving the object of the present invention are considered to be included in the present invention.
[0057] Furthermore, the system configuration shown in FIG. 2 and the hardware configuration of the service provider server 1 shown in FIG. 3 are merely examples for achieving the object of the present invention, and are not particularly limited.
[0058] Furthermore, the functional block diagram shown in Figure 4 is merely illustrative and not particularly limiting. In other words, it is sufficient that the information processing system in Figure 2 has the functionality to execute the various processes described above as a whole, and the functional blocks and databases used to realize this functionality are not particularly limited to the example in Figure 4.
[0059] Furthermore, the locations of the functional blocks and databases are not limited to those shown in Fig. 4 and may be arbitrary. For example, at least some of the functional blocks and databases arranged on the service provider server 1 side may be provided on the computing server group 2G side, the power source 3 side, or another information processing device (not shown).
[0060] The above-described series of processes can be executed by hardware or software, and each functional block can be configured by hardware alone, software alone, or a combination of both.
[0061] When a series of processes is executed by software, the programs constituting the software are installed onto a computer or the like from a network or a recording medium. The computer may be a computer incorporated into dedicated hardware. The computer may also be a computer capable of executing various functions by installing various programs, such as a server, a general-purpose smartphone, or a personal computer.
[0062] The recording medium containing such a program may be composed of not only a removable medium (not shown) that is distributed separately from the device main body in order to provide the program to the user, but also a recording medium that is provided to the user in a state that it is pre-installed in the device main body.
[0063] In this specification, the steps describing the program to be recorded on the recording medium include not only processes that are performed chronologically in accordance with the order, but also processes that are not necessarily performed chronologically but are performed in parallel or individually.
[0064] To summarize the above, an information processing device to which the present invention is applied is sufficient as long as it has the following configuration, and can take various forms. That is, an information processing device to which the present invention is applied (e.g., the service provider server 1 in FIGS. 2 to 4) is an information processing device capable of communicating with a computer (e.g., the computation server 2 in the computation server group 2G in FIG. 1) on which a processing unit (e.g., the CPU or GPU in FIG. 1) is implemented, and is equipped with: component information acquisition means (e.g., the component information acquisition unit 51 in FIG. 4) that, when the computer executes a job (e.g., job J001 in FIG. 1), acquires, from the computer, information on at least one of the quantities of components used by the job and the individual components of the components as component information, and information on at least one of the power consumption of the components of the computer and the energy consumption derived from the consumed power as component consumption information; and emission calculation means (e.g., the emission calculation unit 52 in FIG. 4) that calculates greenhouse gas emissions per job based on the component information and the component consumption information.
[0065] In this way, by calculating greenhouse gas emissions on a job-by-job basis, it becomes possible to achieve precise environmental load management that was previously impossible on a server-by-server or system-by-system basis.
[0066] The system further includes a job consumption estimation means (e.g., the job consumption estimation unit 53 in Figure 4) that estimates at least one of the power consumption and energy consumption of the job based on the component information and the component consumption information, and outputs information indicating the estimation result as job consumption information, and the emission calculation means can calculate the greenhouse gas emission amount per job based on the job consumption information for the job.
[0067] This makes it possible to accurately identify the environmental impact of individual jobs in an environment where multiple jobs are executed simultaneously, using the power consumption and energy estimation function on a job-by-job basis.
[0068] Furthermore, components of the computer may include at least one of a CPU, a memory, and an accelerator.
[0069] This clarifies the main computing resources, enabling practical system implementation. It also enables comprehensive greenhouse gas emissions calculations that include the power consumption of accelerators, which play an important role in AI and simulation processing, in addition to conventional CPUs and memory. In particular, modern HPC systems use a variety of accelerators, including not only GPUs for graphics processing but also dedicated machine learning processors and programmable logic. Being able to manage the environmental impact of these accelerators in a unified manner is of great significance for data center operations.
[0070] Furthermore, the job may be at least one of the following: the computer's workflow, job, job step, process, thread, task, pod used in a container, and a virtual machine workload running on the host OS.
[0071] This enables support for diverse execution units, going beyond the traditional job concept and allowing for greenhouse gas management in computing environments that include container and VM technologies.
[0072] Furthermore, the system may further include a renewable energy ratio calculation means (e.g., the renewable energy ratio calculation unit 54 in Figure 4) that receives information on the generation type of electricity to be supplied to the computer and calculates the renewable energy ratio in the power consumption or energy consumption required for the job based on the job consumption information.
[0073] This makes it possible to quantify the environmental value at the individual calculation level for ESG management and carbon neutrality initiatives by visualizing renewable energy usage on a job-by-job basis.
[0074] Furthermore, the renewable energy ratio calculation means can receive predicted values of information on the type of electricity generated to be supplied to the computer and calculate predicted values of the renewable energy ratio.
[0075] This allows for the prediction of environmental impact during the planning phase before job execution, thanks to the renewable energy supply forecasting function, enabling optimal scheduling.
[0076] Furthermore, the system may further include execution control means (for example, the execution control unit 55 in Figure 4) that controls the execution order or execution destination of at least one of the pods used in the computer's workflow, jobs, job steps, processes, threads, tasks, and containers, based on an index using the predicted value of the renewable energy ratio.
[0077] This enables dynamic job scheduling that takes environmental impact into consideration, allowing for the automatic allocation of optimal resources according to the renewable energy supply situation.
[0078] Furthermore, the execution control means can change the execution order or destination of an execution unit while at least one of the pods used in the workflow, job, job step, process, thread, task, and container is in the queue.
[0079] This allows for dynamic queue control, enabling jobs to be dynamically changed to the optimal execution order based on real-time renewable energy supply conditions, even while they are in a waiting state.
[0080] Furthermore, the system may further include a display control means that generates a display screen having a time axis and a power consumption axis, displays the job identification information together with the time axis and the power consumption axis, and displays at least one of the sum of the power consumption of multiple jobs and the allowable power consumption of the entire system.
[0081] This allows data center operators to visually understand the power consumption of each job over time, enabling real-time power management and environmental load management. In particular, in environments where multiple jobs are running simultaneously, the current power consumption relative to the system's allowable power consumption can be seen at a glance, allowing for efficient management of power supply constraints and optimization of renewable energy usage. Furthermore, the time-series display can be used for forecasting future power demand and optimizing job scheduling, contributing to the realization of sustainable data center operations.
[0082] 1...Service provider server, 2G...Computation server group, 3...Power supply, 4...External device, 11...CPU, 12...ROM, 13...RAM, 14...Bus, 15...Input / output interface, 16...Input unit, 17...Output unit, 18...Storage unit, 19...Communication unit, 20...Drive, 21...Removable media, 51...Component information acquisition unit, 52...Emissions calculation unit, 53...Job consumption estimation unit, 54...Renewable energy ratio calculation unit, 55...Execution control unit, 71...Component information DB, 72...Consumption information DB, 73...Job information DB, 74...Power supply information DB, 75...Emissions DB
Claims
1. An information processing device capable of communicating with a computer in which a processing unit is implemented, comprising: a component information acquisition means for acquiring, when the computer executes a job, from the computer, information on at least one of the quantities of components of the computer used by the job and the individual components of the components as component information, and information on at least one of the power consumption of the components of the computer and the energy consumption derived from the consumed electricity as component consumption information; and an emission calculation means for calculating greenhouse gas emissions per job based on the component information and the component consumption information.
2. The information processing device according to claim 1, further comprising a job consumption calculation means for calculating at least one of the power consumption and energy consumption of the job based on the component information and the component consumption information, and outputting information indicating the calculation result as job consumption information, wherein the emission calculation means calculates the greenhouse gas emission amount per job based on the job consumption information for the job.
3. The information processing device according to claim 1, wherein the components of the computer include at least one of a CPU, a memory, and an accelerator.
4. The information processing device according to claim 1, wherein the job is at least one of a workflow, a job, a job step, a process, a thread, a task, a pod used in a container of the computer, and a workload of a virtual machine running on a host OS.
5. The information processing device according to claim 2, further comprising a renewable energy ratio calculation means for receiving information on the generation type of the power supplied to the computer and calculating the renewable energy ratio in the power consumption or energy consumption required for the job based on the job consumption information.
6. The information processing device according to claim 5, wherein the renewable energy ratio calculation means receives a predicted value of information on the generation type of electricity to be supplied to the computer, and calculates a predicted value of the renewable energy ratio.
7. The information processing device according to claim 6, further comprising an execution control means for controlling the order of execution or destination of at least one of the computer's workflows, jobs, job steps, processes, threads, tasks and pods used in containers based on an index using the predicted value of the renewable energy ratio.
8. An information processing device according to claim 7, wherein the execution control means can change the execution order or execution destination of the execution unit when at least one of the workflow, job, job step, process, thread, task, and pod used in the container is queued.
9. The information processing device according to claim 1, further comprising a display control means for generating a display screen having a time axis and a power consumption axis, displaying the job identification information together with the time axis and the power consumption axis, and displaying at least one of the total power consumption of multiple jobs and the allowable power consumption of the entire system.
10. An information processing method executed by an information processing device capable of communicating with a computer in which a processing unit is implemented, comprising: a component information acquisition step for acquiring, when the computer executes a job, information on at least one of the quantities of components of the computer used by the job and the individual components of the components as component information, and information on at least one of the power consumption of the components of the computer and the energy consumption derived from the consumed electricity as component consumption information from the computer; and an emission calculation step for calculating greenhouse gas emissions per job based on the component information and the component consumption information.
11. A program that causes a computer capable of communicating with a computer in which a processing unit is implemented to execute control processing including: a component information acquisition step that, when the computer executes a job, acquires from the computer information on at least one of the quantities of components of the computer used by the job and the individual components of the components as component information, and information on at least one of the power consumption of the components of the computer and the energy consumption derived from the consumed electricity as component consumption information; and an emission calculation step that calculates greenhouse gas emissions per job based on the component information and the component consumption information.
Citation Information
Patent Citations
Calculation method, calculation program and computer
JP2013131076A
Job scheduling program, information processing device, and job scheduling method
JP2021182224A