WO2018198501A1 - Information processing device, information processing method and program - Google Patents

Information processing device, information processing method and program Download PDF

Info

Publication number
WO2018198501A1
WO2018198501A1 PCT/JP2018/006036 JP2018006036W WO2018198501A1 WO 2018198501 A1 WO2018198501 A1 WO 2018198501A1 JP 2018006036 W JP2018006036 W JP 2018006036W WO 2018198501 A1 WO2018198501 A1 WO 2018198501A1
Authority
WO
WIPO (PCT)
Prior art keywords
circuit
fpga
power consumption
information
reconfigurable
Prior art date
Application number
PCT/JP2018/006036
Other languages
French (fr)
Japanese (ja)
Inventor
博信 山崎
Original Assignee
富士通株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 富士通株式会社 filed Critical 富士通株式会社
Publication of WO2018198501A1 publication Critical patent/WO2018198501A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present invention relates to an information processing apparatus, an information processing method, and a program.
  • An information processing apparatus having a reconfigurable device, a configuration code memory, and a reconfigurable device controller is known (see Patent Document 1).
  • the reconfigurable device realizes the circuit for executing a desired task in accordance with the configuration code so that the circuit can be changed.
  • the configuration code memory stores configuration codes for realizing a plurality of circuits having different characteristics for each task executed by the reconfigurable device.
  • the reconfiguration device controller controls loading of the configuration code to the reconfiguration device, selecting an appropriate circuit to be executed by the reconfiguration device according to the operating state of the system from among a plurality of circuits having different characteristics.
  • a server load distribution method having a plurality of server devices that provide services in response to service requests and a load distribution device that transfers the service requests to any of the server devices (see Patent Document 2).
  • Each server device has means for detecting the server load, and means for comparing the server load with a threshold and notifying the comparison result to the load distribution device.
  • the load distribution apparatus includes means for managing the load status of each server apparatus based on the comparison result notified from each server apparatus, and means for selecting a server apparatus having a low load and transferring a service request.
  • the reconfigurable device can change the circuit, and the power consumption and the heat generation amount change depending on the changed circuit. Therefore, it is difficult to manage the temperature of the reconfigurable device.
  • an object of the present invention is to provide an information processing apparatus, an information processing method, and a program capable of determining whether a circuit scheduled to be added to a reconfigurable circuit can be configured.
  • the information processing apparatus includes at least one reconfigurable circuit and a control unit that controls a circuit configuration of the reconfigurable circuit, and the control unit stores a threshold value for each of the reconfigurable circuits, For each reconfigurable circuit, the circuit to be added can be configured based on the power consumption information based on the information indicating the power consumption of the currently executing circuit, the power consumption of the circuit to be added, and the threshold value. Determine whether or not.
  • it can be determined whether or not a circuit to be added to the reconfigurable circuit can be configured.
  • FIG. 1 is a diagram illustrating a configuration example of an information processing apparatus according to the first embodiment.
  • FIG. 2 is a diagram illustrating a configuration example of the first FPGA server.
  • 3A to 3C are diagrams showing examples of task assignment to FPGAs.
  • FIG. 4 is a diagram illustrating a functional configuration example of the information processing apparatus.
  • FIG. 5 is a sequence diagram illustrating an example of an information processing method of the information processing apparatus.
  • 6A is a time chart showing the threshold values of the FPGAs of the first to fifth FPGA servers
  • FIG. 6B is a time chart showing the power consumption of the FPGAs of the first to fifth FPGA servers.
  • FIG. 6C is a time chart showing the average power consumption of the FPGAs of the first to fifth FPGA servers, and FIG.
  • FIG. 6D is the total power consumption of the whole FPGA of the first to fifth FPGA servers.
  • 4 is a time chart showing the maximum power consumption of one FPGA.
  • FIG. 7A is a time chart showing an example of the threshold value of the FPGA of the first to fifth FPGA servers according to the second embodiment, and
  • FIG. 7B is a diagram of the FPGA of the first to fifth FPGA servers. It is a time chart which shows power consumption.
  • FIG. 1 is a diagram illustrating a configuration example of an information processing apparatus according to the first embodiment.
  • the information processing apparatus includes a client 100, a management server 110, a network 120, and first to fifth field programmable gate array (FPGA) servers 1. 30a to 130e. Note that the number of FPGA servers 130a to 130e is not limited to five.
  • the client 100 is a computer, and includes a central processing unit (CPU) 101, a random access memory (RAM) 102, and a hard disk drive (HDD) unit 103.
  • the CPU 101 reads a program from the HDD unit 103, expands the read program in the RAM 102, and executes the program expanded in the RAM 102.
  • the client 100 can request the management server 110 to execute the task, and obtain the task execution result from the management server 110.
  • the management server 110 is a computer and includes a CPU 111, a RAM 112, and an HDD unit 113.
  • the CPU 111 reads a program from the HDD unit 113, expands the read program in the RAM 112, and executes the program expanded in the RAM 112.
  • the management server 110 assigns tasks to the first to fifth FPGA servers 130a to 130e via the network 120, acquires task execution results from the first to fifth FPGA servers 130a to 130e, and executes the execution results. Is output to the client 100.
  • the first FPGA server 130a is a computer, and includes a CPU 131a, a RAM 132a, an HDD unit 133a, and an FPGA 134a.
  • the second to fifth FPGA servers 130b to 130e are computers, and include CPUs 131b to 131e, RAMs 132b to 132e, HDD units 133b to 133e, and FPGAs 134b to 134e, respectively.
  • the CPUs 131a to 131e read the programs from the HDD units 133a to 133e, respectively, expand the read programs in the RAMs 132a to 132e, and execute the programs expanded in the RAMs 132a to 132e.
  • the FPGAs 134a to 134e are reconfigurable circuits whose circuits can be changed.
  • Each of the first to fifth FPGA servers 130a to 130e configures a circuit corresponding to the task requested from the management server 110 in the FPGAs 134a to 134e, executes the circuit, and transmits the execution result data to the network 120. To the management server 110.
  • FIG. 2 is a diagram illustrating a configuration example of the first FPGA server 130a.
  • the configuration of the first FPGA server 130a will be described as an example, but the configurations of the second to fifth FPGA servers 130b to 130e are the same as the configuration of the first FPGA server 130a.
  • the first FPGA server 130a includes a CPU 131a, a RAM 132a, an HDD unit 133a, and an FPGA 134a.
  • the HDD unit 133a stores circuit information (configuration codes) 201 to 208 and circuit attached information 211 to 218 for configuring the task circuit in the FPGA 134a.
  • the circuit information 201 is circuit information for configuring the task A circuit on the top of the FPGA 134a.
  • the circuit information 202 is circuit information for configuring the task A circuit second from the top of the FPGA 134a.
  • the circuit information 203 is circuit information for configuring the task A circuit third from the top of the FPGA 134a.
  • the circuit information 204 is circuit information for configuring the task A circuit at the bottom of the FPGA 134a.
  • the circuit information 205 is circuit information for configuring the task B circuit at the upper left of the FPGA 134a.
  • the circuit information 206 is circuit information for configuring the task B circuit on the upper right side of the FPGA 134a.
  • the circuit information 207 is circuit information for configuring the task C circuit under the FPGA 134a.
  • the circuit information 208 is circuit information for configuring the task C circuit on the FPGA 134a.
  • the circuit attached information 211 to 218 is information attached to the circuit information 201 to 208, respectively.
  • the circuit ancillary information 211 to 218 includes a circuit size 221 and an operating frequency 222, respectively.
  • the circuit ancillary information 211 to 214 includes a circuit size 221 and an operating frequency 222 of the circuit of task A, respectively.
  • the circuit ancillary information 215 and 216 include the circuit size 221 and the operating frequency 222 of the task B circuit, respectively.
  • the circuit ancillary information 217 and 218 include the circuit size 221 and the operating frequency 222 of the task C circuit, respectively.
  • the management server 110 generates circuit information 201 to 208 and circuit attached information 211 to 128, and outputs the circuit information 201 to 208 and circuit attached information 211 to 128 to the first to fifth FPGA servers 130a to 130e.
  • the CPUs 131a to 131e respectively write circuit information 201 to 208 and circuit attached information 211 to 128 in the HDD units 133a to 133e.
  • FIG. 3A shows an example of FPGAs 134a to 134c before task C is assigned.
  • the first FPGA 134a includes four task A circuits and one task B circuit.
  • two task B circuits are configured.
  • No circuit is configured in the third FPGA 134c.
  • the management server 110 can add the circuit of task C to the FPGA 134b or 134c using the circuit information 207 or 208 of task C.
  • FIG. 3B is a diagram illustrating an example in which the management server 110 assigns a task C circuit to the FPGA 134b.
  • the management server 110 assigns task C to the second FPGA server 130b.
  • the second FPGA server 130b writes the circuit information 207 in the HDD unit 133b to the FPGA 134b.
  • a task C circuit is additionally configured in the FPGA 134b.
  • FIG. 3C is a diagram showing an example in which the management server 110 assigns two task C circuits to the FPGA 134c.
  • the management server 110 assigns two tasks C to the third FPGA server 130c.
  • the third FPGA server 130c writes the circuit information 207 and 208 in the HDD unit 133c to the FPGA 134c.
  • two tasks C circuits are additionally configured in the FPGA 134c.
  • the FPGAs 134a to 134e become too high in temperature, there is a possibility of performance degradation and failure rate increase due to thermal noise.
  • the FPGAs 134a to 134e have power consumption (heat generation amount) greatly different depending on a circuit to be written, so that temperature management is difficult. If the temperature management of the FPGAs 134a to 134e is not performed, the FPGAs 134a to 134e may ignite. When tasks concentrate on a part of the plurality of FPGAs 134a to 134e, the part of the FPGA becomes very hot. Therefore, the management server 110 efficiently operates the first to fifth FPGA servers 130a to 130e by appropriately assigning tasks to the first to fifth FPGA servers 130a to 130e.
  • the management server 110 suppresses the overall power consumption of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e, and the task concentrates on one FPGA, resulting in an abnormally high temperature. Assign tasks to avoid.
  • FIG. 4 is a diagram illustrating a functional configuration example of the information processing apparatus.
  • the information processing apparatus includes a client 100, a management server 110, and first to fifth FPGA servers 130a to 130e.
  • the management server 110 has a module 400.
  • the module 400 is a program module executed by the CPU 111.
  • the module 400 includes an FPGA execution management unit 401, an execution FPGA server selection unit 402, an execution availability inquiry unit 403, a task reception unit 404, and a threshold control unit 405.
  • the first FPGA server 130a includes a RAM 132a, an HDD unit 133a, an FPGA 134a, and a module 410.
  • the RAM 132a has a threshold storage unit 413.
  • the HDD unit 133 a includes a circuit information storage unit 411 and a circuit attached information storage unit 412.
  • the circuit information storage unit 411 stores the circuit information 201 to 208 in FIG.
  • the circuit attached information storage unit 412 stores circuit attached information 211 to 218 shown in FIG.
  • the module 410 is a module of a program executed by the CPU 131a.
  • the module 410 includes an execution result processing unit 414, an execution control unit 415, a circuit information management unit 416, a circuit information writing unit 417, a power consumption calculation unit 418, and an execution availability determination unit 419.
  • the circuit information writing unit 417 is a control unit, and can control the circuit configuration of the FPGA 134a by writing circuit information to the FPGA 134a.
  • the second to fifth FPGA servers 130b to 130e have the same configuration as that of the first FPGA server 130a.
  • FIG. 5 is a sequence diagram illustrating an example of an information processing method of the information processing apparatus.
  • a case will be described as an example where the first to fifth FPGA servers 130a to 130e are in operation and the sixth FPGA server is inactive.
  • the sixth FPGA server has the same configuration as the first to fifth FPGA servers 130a to 130e.
  • the management server 110 instructs the first to fifth FPGA servers 130a to 130e to set initial values (maximum values) of the threshold values 601a to 601e in order by the threshold control unit 405.
  • the first FPGA server 130 a writes the initial value of the threshold 601 a in the threshold storage unit 413 by the execution availability determination unit 419.
  • each of the second to fifth FPGA servers 130b to 130e causes the threshold storage unit 41 to execute the execution determination unit 419. 3 is written with initial values of threshold values 601b to 601e.
  • the management server 110 causes the threshold value control unit 405 to decrease the threshold values 601a to 601e with respect to the first to fifth FPGA servers 130a to 130e at regular intervals as shown in FIG. 6A.
  • the thresholds 601a to 601e are instructed to be updated in order.
  • This update instruction corresponds to steps S507 and S509. Details thereof will be described later.
  • Each of the first to fifth FPGA servers 130a to 130e receives an update instruction, and updates the threshold value 601a to 601e of the threshold value storage unit 413 so that the threshold value 601a to 601e decreases by the execution availability determination unit 419. As shown in FIG.
  • the management server 110 instructs the threshold values 601a to 601e to be set to initial values (maximum values) in order when the threshold values 601a to 601e become 0, as shown in FIG. 6A.
  • the threshold values 601a to 601e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e periodically change as shown in FIG.
  • step S501 the client 100 outputs a task C execution request to the management server 110. Then, the management server 110 receives an execution request for the task C by the task receiving unit 404.
  • step S502 the management server 110 causes the execution availability inquiry unit 403 to output an inquiry about whether task C can be executed to the first to fifth FPGA servers 130a to 130e in operation.
  • each of the first to fifth FPGA servers 130a to 130e causes the power consumption calculation unit 418 to add information indicating the power consumption of the circuit currently being executed for each FPGA 134a to 134e, and to be added.
  • Information indicating the power consumption of the circuit of task C is added to obtain information indicating the overall power consumption.
  • the execution control unit 415 outputs information on the two tasks B currently being executed to the circuit information management unit 416.
  • the circuit attachment information storage unit 412 outputs the circuit attachment information 215 and 216 of the two tasks B to the power consumption calculation unit 418 under the control of the circuit information management unit 416.
  • the power consumption calculation unit 418 calculates power consumption by multiplying the circuit size 221 and the operating frequency 222 for each of the circuit attached information 215 and 216, and adds the power consumption to obtain the two currently executed. The power consumption of the circuit of task B is obtained.
  • the power consumption calculation unit 418 obtains the power consumption of the circuit of the task C to be added by multiplying the circuit size 221 of the circuit ancillary information 217 of the task C to be added by the operating frequency 222.
  • the power consumption calculation unit 418 adds the power consumption of the circuits of the two tasks B that are currently being executed and the power consumption of the circuit of the task C that is scheduled to be added, and determines whether or not the entire power consumption can be executed. Output to.
  • the other FPGA servers 130a and 130c to 130e similarly calculate the overall power consumption.
  • step S504 the first to fifth FPGA servers 130a to 130e output the power consumption calculation unit 418 from the threshold values 601a to 601e stored in the threshold value storage unit 413 by the execution determination unit 419, respectively.
  • the total power consumption is subtracted, and the result of the subtraction is output to the execution FPGA server selection unit 402 of the management server 110 as an execution propriety answer.
  • the subtraction result is a positive value, indicating that the FPGA can execute the circuit of the additional task C.
  • the subtraction result is a negative value, indicating that the FPGA cannot execute the circuit of the additional task C.
  • the execution determination unit 419 of each of the first to fifth FPGA servers 130a to 130e is a determination unit, and information indicating the power consumption of the circuit of the task currently being executed and the task to be added for each of the FPGAs 134a to 134e. Whether or not the circuit to be added can be configured is determined based on the power consumption information based on the information indicating the power consumption of the circuit and the threshold values 601a to 601e.
  • step S505 the management server 110 causes the execution FPGA server selection unit 402 to have the largest value among the subtraction results of the first to fifth FPGA servers 130a to 130e, and the subtraction result is a positive value.
  • the task C execution request is output to the execution control unit 415 of the FPGA server 130b. That is, the management server 110 instructs the circuit 134 of the task C to be added to the FPGA 134b of the second FPGA server 130b.
  • the management server 110 uses the execution FPGA server selection unit 402 to change to the sixth FPGA server that is suspended.
  • an execution request for task C is output, and the circuit configuration of task C is instructed to the FPGA of the sixth FPGA server.
  • the management server 110 sets an initial value of the threshold for the suspended sixth FPGA server by the threshold control unit 405. Note that the sixth FPGA server being suspended can reduce the overall power consumption by not assigning tasks as much as possible.
  • step S506 the second FPGA server 130b instructs the execution control unit 415 to start executing task C.
  • the circuit information writing unit 417 reads the circuit information 207 of task C from the circuit information storage unit 411, and writes the circuit information 207 to the FPGA 134b.
  • a circuit for task C is added to the FPGA 134b.
  • the FPGA 134b starts executing the circuits of two tasks B and one task C.
  • the process returns to step S502, and the management server 110 again outputs a task C execution possibility inquiry. That's fine. That is, the management server 110 may repeat the execution availability inquiry process by the number of parallel processes.
  • step S507 the management server 110 uses the threshold control unit 405 to set threshold values for the first to fifth FPGA servers 130a to 130e after a predetermined time has elapsed since the initial setting of the threshold values 601a to 601e.
  • An update instruction for decreasing 601a to 601e is output.
  • step S508 the first to fifth FPGA servers 130a to 130e in operation are updated by the execution availability determination unit 419 so that the threshold value of the threshold value storage unit 413 decreases. Then, each of the first to fifth FPGA servers 130a to 130e calculates the power consumption of the circuit of the task currently being executed by the power consumption calculation unit 418 and outputs the calculated power consumption to the execution determination unit 419. To do. Then, the first to fifth FPGA servers 130a to 130e respectively subtract the power consumption output from the power consumption calculation unit 418 from the threshold values 601a to 601e stored in the threshold value storage unit 413 by the execution availability determination unit 419. If the subtraction result is a positive value, execution of the task circuits of the FPGAs 134a to 134e is continued.
  • step S509 the management server 110 causes the threshold control unit 405 to respectively perform the first to fifth FPGA servers 130a to 130e after a predetermined time has elapsed since the update of the thresholds 601a to 601e in step S507.
  • An update instruction for decreasing the threshold values 601a to 601e is output.
  • step S510 the first to fifth FPGA servers 130a to 130 in operation.
  • e is updated so that the threshold value of the threshold value storage unit 413 decreases.
  • the first to fifth FPGA servers 130a to 130e respectively subtract the power consumption output from the power consumption calculation unit 418 from the threshold values 601a to 601e stored in the threshold value storage unit 413 by the execution availability determination unit 419.
  • the first, third to fifth FPGA servers 130a and 130c to 130e respectively execute the task circuits of the FPGAs 134a and 134c to 134e when the subtraction result is a positive value by the execution determination unit 419. Let it continue.
  • step S511 the second FPGA server 130b compares the power consumption with the threshold value 601b by the execution determination unit 419, and determines that the power consumption is larger than the threshold value 601b and the subtraction result is a negative value.
  • step S512 the second FPGA server 130b causes the execution availability determination unit 419 to reduce the power consumption from the threshold value 601b in order from the task circuit with the largest power consumption among the circuits of the task being executed. Until execution is stopped.
  • the execution result processing unit 414 writes the intermediate result data of the task circuit of the stopped FPGA 134b and the recovery point indicating the stop point in the RAM 132b.
  • step S513 the second FPGA server 130b causes the execution result processing unit 414 to output a task execution request including the intermediate result data and the recovery point to the FPGA execution management unit 401 of the management server 110.
  • the second FPGA server 130b changes the threshold value of the threshold value storage unit 132a to 0 as shown by the threshold value 610 in FIG. 6A by the execution determination unit 419 and completes the execution of the task circuit.
  • the threshold value of the threshold value storage unit 132a is set to the initial value.
  • the threshold value 610 in FIG. 6A indicates the threshold value of the FPGA 134c of the third FPGA server 130c, but the threshold value of the FPGA 134b of the second FPGA server 130b is the same.
  • step S514 the FPGA execution management unit 401 outputs the task execution request to the task reception unit 404.
  • the task reception unit 404 outputs a task execution request to the execution availability inquiry unit 403.
  • the management server 110 outputs a task execution permission inquiry to the first, third to fifth FPGA servers 130a and 130c to 130e by the execution permission inquiry section 403.
  • step S515 the first, third to fifth FPGA servers 130a, 130c to 130e are currently being executed for each of the FPGAs 134a, 134c to 134e by the execution determination unit 419 in the same manner as in step S503.
  • Information indicating the power consumption of the circuit and the information indicating the power consumption of the circuit of the task to be added are added to obtain information indicating the overall power consumption.
  • step S516 the first, third to fifth FPGA servers 130a, 130c to 130e are caused to execute the threshold value 601a stored in the threshold value storage unit 413 by the execution availability determination unit 419, similarly to step S504.
  • the total power consumption output from the power consumption calculation unit 418 is subtracted from 601c to 601e, and the subtraction result is output to the execution FPGA server selection unit 402 of the management server 110 as an execution availability answer.
  • step S517 the management server 110 has the largest value among the subtraction results of the first, third to fifth FPGA servers 130a, 130c to 130e by the execution FPGA server selection unit 402, and performs subtraction.
  • a task execution request is output to the execution control unit 415 of the first FPGA server 130a whose result is a positive value.
  • the execution request includes the intermediate result data and the recovery point.
  • the management server 110 causes the execution FPGA server selection unit 402 to execute the suspended sixth FPGA.
  • the task execution request is output to the server.
  • the management server 110 sets an initial value of the threshold for the suspended sixth FPGA server by the threshold control unit 405.
  • step S518, the first FPGA server 130a reads the circuit information of the task from the circuit information storage unit 411 by the circuit information writing unit 417, and writes the circuit information in the FPGA 134a. Then, the first FPGA server 130a causes the execution control unit 415 to input the intermediate result data to the FPGA 134a and instruct to resume execution from the recovery point of the task. Thereby, a task circuit is added to the FPGA 134a. The FPGA 134a resumes execution of the task circuit.
  • the first FPGA server 130 a When the execution of the task circuit of the FPGA 134 a is completed, the first FPGA server 130 a outputs the execution result data of the FPGA 134 a to the FPGA execution management unit 401 of the management server 110 by the execution result processing unit 414.
  • the FPGA execution management unit 401 outputs execution result data to the client 100 via the task reception unit 404.
  • FIG. 6A is a time chart showing threshold values 601a to 601e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e.
  • FIG. 6B corresponds to FIG. 6A and is a time chart showing power consumption 602a to 602e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e.
  • the management server 110 updates the threshold values 601a to 601e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e by rotation. As a result, the management server 110 can, on average, make a task execution request to the first to fifth FPGA servers 130a to 130e by rotation. As shown in FIG.
  • the power consumptions 602a to 602e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e are not biased and are compared with the first to fifth FPGA servers 130a to 130e. It can be seen that the tasks are distributed almost evenly.
  • FIG. 6C is a time chart showing average power consumption of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e.
  • the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e have substantially the same average power consumption and the same amount of heat generation.
  • the management server 110 can prevent the task from being concentrated on some of the first to fifth FPGA servers 130a to 130e and resulting in an abnormally high temperature.
  • the FPGAs 134a to 134e can prevent performance degradation and failure rate increase due to high temperatures.
  • FIG. 6D is a time chart showing the total power consumption 604 of the entire FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e and the maximum power consumption 605 of one FPGA. It can be seen that the management server 110 reduces the total power consumption 604 of the entire FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e, and reduces the maximum power consumption 605 of one FPGA. . As a result, it is possible to prevent the task from being concentrated on the FPGAs of some of the FPGA servers and causing an abnormally high temperature.
  • each of the first to fifth FPGA servers 130a to 130e compares the power consumption with the threshold value by the execution determination unit 419 to determine whether or not the circuits of tasks scheduled to be added to the FPGAs 134a to 134e can be configured. Can be judged.
  • the management server 110 can output an execution feasibility inquiry only to the FPGA server to which tasks can be added, according to the free space of the FPGAs 134a to 134e.
  • the management server 110 grasps the circuit of the task being executed by the FPGAs 134a to 134e of the FPGA servers 130a to 130e.
  • the FPGA 134a of the first FPGA server 130a in FIG. 3A has a small empty space and cannot add a task C circuit.
  • the management server 110 outputs an execution availability inquiry to an FPGA server other than the first FPGA server 130a.
  • the plurality of FPGA servers 130a to 130e have the plurality of FPGAs 134a to 134e has been described as an example.
  • one FPGA server may have the plurality of FPGAs 134a to 134e.
  • each of the FPGA servers 130a to 130e may have a plurality of FPGAs.
  • FIG. 7A is a time chart showing an example of threshold values 701a to 701e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e according to the second embodiment.
  • This embodiment differs from the first embodiment in the threshold control method of the management server 110.
  • the difference of the present embodiment from the first embodiment will be described with reference to FIGS. 4 and 5.
  • step S505 when all the subtraction results of the first to fifth FPGA servers 130a to 130e in operation are negative values, the management server 110 uses the execution FPGA server selection unit 402 to An execution request for task C is output to the suspended sixth FPGA server.
  • the management server 110 uses the threshold control unit 405 to When the sum of the threshold values 701a to 701e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e in operation is smaller than the first value, as shown in FIG. An instruction to increase the smallest threshold value 701a among the threshold values 701a to 701e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e to the threshold value 702 is output to the first FPGA server 130a.
  • the threshold control unit 405 sets the threshold 701a to the threshold 702 within a range where the sum of the thresholds 701a to 701e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e in operation does not exceed the first value.
  • the instruction to increase is output.
  • the first FPGA server 130a increases the threshold value of the threshold value storage unit 413 by the execution possibility determination unit 419.
  • the first FPGA server 130a causes the execution determination unit 419 to subtract the overall power consumption output from the power consumption calculation unit 418 from the threshold value 702 stored in the threshold value storage unit 413, and the subtraction result is obtained.
  • the data is output to the execution FPGA server selection unit 402 of the management server 110.
  • the management server 110 When the subtraction result of the first FPGA server 130a is a positive value, the management server 110 outputs an execution request for task C to the execution control unit 415 of the first FPGA server 130a. To do. Thereafter, the first FPGA server 130a starts executing the circuit of the task C as in step S506.
  • step S517 if all of the subtraction results of the first, third to fifth FPGA servers 130a, 130c to 130e are negative values, the management server 110 causes the threshold control unit 405 to execute the first, third, If the sum of the threshold values 701a and 701c to 701e of the FPGAs 134a and 134c to 134e of the fifth FPGA servers 130a and 130c to 130e is smaller than the first value, the first, third to fifth FPGA servers 130a, An instruction to increase the threshold value 701a of the FPGA 134a of the first FPGA server 130a among the threshold values 701a and 701c to 701e of the FPGAs 134a and 130c to 134e of 130c to 130e is output to the first FPGA server 130a.
  • the threshold control unit 405 increases the threshold 701a in a range where the sum of the thresholds 701a to 701e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e in operation does not exceed the first value. Output instructions.
  • the first FPGA server 130a increases the threshold value of the threshold value storage unit 413 by the execution possibility determination unit 419.
  • the first FPGA server 130a causes the execution determination unit 419 to subtract the overall power consumption output from the power consumption calculation unit 418 from the threshold value 702 stored in the threshold value storage unit 413, and the subtraction result is obtained.
  • the data is output to the execution FPGA server selection unit 402 of the management server 110.
  • the management server 110 When the subtraction result of the first FPGA server 130a is a positive value, the management server 110 outputs a task execution request to the execution control unit 415 of the first FPGA server 130a. . Thereafter, in step S508, the first FPGA server 130a resumes execution of the task circuit.
  • FIG. 7B corresponds to FIG. 7A and is a time chart showing power consumption 703a to 703e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e.
  • the management server 110 temporarily increases the threshold 702 in order to be able to cope with temporary task concentration. As a result, the power consumption 704 temporarily increases.
  • the power consumption 703a to 703e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e is not biased, and Tasks are distributed almost uniformly to the FPGAs 134a to 134e of the fifth FPGA servers 130a to 130e.
  • This embodiment can be realized by a computer executing a program. Further, a computer-readable recording medium in which the above program is recorded and a computer program product such as the above program can also be applied as an embodiment of the present invention.
  • a recording medium for example, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Power Sources (AREA)
  • Hardware Redundancy (AREA)

Abstract

[Problem] To provide an information processing device capable of determining whether a circuit scheduled to be added to a reconfigurable circuit can be configured. [Solution] The information processing device includes: at least one reconfigurable circuit (134a); and control units (413, 417, 419) which control a circuit configuration of the reconfigurable circuit, wherein the control units stores a threshold value for each reconfigurable circuit, and determines whether a circuit scheduled to be added is configurable for each reconfigurable circuit on the basis of information which indicates consumption power of a circuit currently being executed, consumption power information based on information which indicates consumption power of the circuit scheduled to be added, and the threshold value.

Description

情報処理装置、情報処理方法及びプログラムInformation processing apparatus, information processing method, and program
 本発明は、情報処理装置、情報処理方法及びプログラムに関する。 The present invention relates to an information processing apparatus, an information processing method, and a program.
 再構成デバイスとコンフィグレーションコードメモリと再構成デバイスコントローラとを有する情報処理装置が知られている(特許文献1参照)。再構成デバイスは、コンフィグレーションコードにしたがって所望のタスクを実行するための回路を変更可能に実現する。コンフィグレーションコードメモリは、再構成デバイスで実行するタスク毎に、それぞれ異なる特徴を持つ複数の回路を実現するためのコンフィグレーションコードが格納される。再構成デバイスコントローラは、異なる特徴を持つ複数の回路のなかからシステムの動作状態に応じて再構成デバイスに実行させる適切な回路を選択する、再構成デバイスに対するコンフィグレーションコードのロードを制御する。 An information processing apparatus having a reconfigurable device, a configuration code memory, and a reconfigurable device controller is known (see Patent Document 1). The reconfigurable device realizes the circuit for executing a desired task in accordance with the configuration code so that the circuit can be changed. The configuration code memory stores configuration codes for realizing a plurality of circuits having different characteristics for each task executed by the reconfigurable device. The reconfiguration device controller controls loading of the configuration code to the reconfiguration device, selecting an appropriate circuit to be executed by the reconfiguration device according to the operating state of the system from among a plurality of circuits having different characteristics.
 また、サービス要求に応答してサービスを提供する複数のサーバ装置と、サービス要求をいずれかのサーバ装置へ転送する負荷分散装置とを有するサーバ負荷分散方式が知られている(特許文献2参照)。各サーバ装置は、サーバ負荷を検知する手段と、サーバ負荷を閾値と比較し、比較結果を負荷分散装置へ通知する手段とを有する。負荷分散装置は、各サーバ装置から通知される比較結果に基づいて各サーバ装置の負荷状況を管理する手段と、負荷の重くないサーバ装置を選択してサービス要求を転送する手段とを有する。 Also known is a server load distribution method having a plurality of server devices that provide services in response to service requests and a load distribution device that transfers the service requests to any of the server devices (see Patent Document 2). . Each server device has means for detecting the server load, and means for comparing the server load with a threshold and notifying the comparison result to the load distribution device. The load distribution apparatus includes means for managing the load status of each server apparatus based on the comparison result notified from each server apparatus, and means for selecting a server apparatus having a low load and transferring a service request.
特開2007-179358号公報JP 2007-179358 A 特開2012-88797号公報JP 2012-88797 A
 再構成デイバスが高温になると、性能低下及び故障率上昇の可能性がある。しかし、再構成デバイスは、回路を変更可能であり、変更された回路により消費電力及び発熱量が変わる。そのため、再構成デバイスの温度を管理することが困難である。 ∙ When the reconstructed device becomes hot, there is a possibility of performance degradation and failure rate increase. However, the reconfigurable device can change the circuit, and the power consumption and the heat generation amount change depending on the changed circuit. Therefore, it is difficult to manage the temperature of the reconfigurable device.
 1つの側面では、本発明の目的は、再構成可能回路に追加予定の回路を構成可能か否かを判断することができる情報処理装置、情報処理方法及びプログラムを提供することである。 In one aspect, an object of the present invention is to provide an information processing apparatus, an information processing method, and a program capable of determining whether a circuit scheduled to be added to a reconfigurable circuit can be configured.
 情報処理装置は、少なくとも1つの再構成可能回路と、前記再構成可能回路の回路構成を制御する制御部とを有し、前記制御部は、前記再構成可能回路毎の閾値を記憶し、前記再構成可能回路毎に、現在実行中の回路の消費電力を示す情報と追加予定の回路の消費電力を示す情報に基づく消費電力情報と、前記閾値とを基に、追加予定の回路を構成可能か否かを判断する。 The information processing apparatus includes at least one reconfigurable circuit and a control unit that controls a circuit configuration of the reconfigurable circuit, and the control unit stores a threshold value for each of the reconfigurable circuits, For each reconfigurable circuit, the circuit to be added can be configured based on the power consumption information based on the information indicating the power consumption of the currently executing circuit, the power consumption of the circuit to be added, and the threshold value. Determine whether or not.
 1つの側面では、再構成可能回路に追加予定の回路を構成可能か否かを判断することができる。 In one aspect, it can be determined whether or not a circuit to be added to the reconfigurable circuit can be configured.
図1は、第1の実施形態による情報処理装置の構成例を示す図である。FIG. 1 is a diagram illustrating a configuration example of an information processing apparatus according to the first embodiment. 図2は、第1のFPGAサーバの構成例を示す図である。FIG. 2 is a diagram illustrating a configuration example of the first FPGA server. 図3(A)~(C)は、FPGAに対するタスクの割り当て例を示す図である。3A to 3C are diagrams showing examples of task assignment to FPGAs. 図4は、情報処理装置の機能構成例を示す図である。FIG. 4 is a diagram illustrating a functional configuration example of the information processing apparatus. 図5は、情報処理装置の情報処理方法の例を示すシーケンス図である。FIG. 5 is a sequence diagram illustrating an example of an information processing method of the information processing apparatus. 図6(A)は第1~第5のFPGAサーバのFPGAの閾値を示すタイムチャートであり、図6(B)は第1~第5のFPGAサーバのFPGAの消費電力を示すタイムチャートであり、図6(C)は第1~第5のFPGAサーバのFPGAの平均消費電力を示すタイムチャートであり、図6(D)は第1~第5のFPGAサーバのFPGAの全体の合計消費電力と1個当たりのFPGAの最大消費電力を示すタイムチャートである。6A is a time chart showing the threshold values of the FPGAs of the first to fifth FPGA servers, and FIG. 6B is a time chart showing the power consumption of the FPGAs of the first to fifth FPGA servers. FIG. 6C is a time chart showing the average power consumption of the FPGAs of the first to fifth FPGA servers, and FIG. 6D is the total power consumption of the whole FPGA of the first to fifth FPGA servers. 4 is a time chart showing the maximum power consumption of one FPGA. 図7(A)は第2の実施形態による第1~第5のFPGAサーバのFPGAの閾値の例を示すタイムチャートであり、図7(B)は第1~第5のFPGAサーバのFPGAの消費電力を示すタイムチャートである。FIG. 7A is a time chart showing an example of the threshold value of the FPGA of the first to fifth FPGA servers according to the second embodiment, and FIG. 7B is a diagram of the FPGA of the first to fifth FPGA servers. It is a time chart which shows power consumption.
(第1の実施形態)
 図1は、第1の実施形態による情報処理装置の構成例を示す図である。情報処理装置は、クラウドサービスを実現するため、クライアント100と、管理サーバ110と、ネットワーク120と、第1~第5のFPGA(field programmable gate array)サーバ1
30a~130eとを有する。なお、FPGAサーバ130a~130eの数は、5個に限定されない。
(First embodiment)
FIG. 1 is a diagram illustrating a configuration example of an information processing apparatus according to the first embodiment. In order to realize a cloud service, the information processing apparatus includes a client 100, a management server 110, a network 120, and first to fifth field programmable gate array (FPGA) servers 1.
30a to 130e. Note that the number of FPGA servers 130a to 130e is not limited to five.
 クライアント100は、コンピュータであり、中央処理ユニット(CPU)101と、ランダムアクセスメモリ(RAM)102と、ハードディスクドライブ(HDD)ユニット103とを有する。CPU101は、HDDユニット103からプログラムを読み出し、読み出したプログラムをRAM102に展開し、RAM102に展開されたプログラムを実行する。クライアント100は、管理サーバ110にタスクの実行を依頼し、管理サーバ110からタスクの実行の結果を得ることができる。 The client 100 is a computer, and includes a central processing unit (CPU) 101, a random access memory (RAM) 102, and a hard disk drive (HDD) unit 103. The CPU 101 reads a program from the HDD unit 103, expands the read program in the RAM 102, and executes the program expanded in the RAM 102. The client 100 can request the management server 110 to execute the task, and obtain the task execution result from the management server 110.
 管理サーバ110は、コンピュータであり、CPU111と、RAM112と、HDDユニット113とを有する。CPU111は、HDDユニット113からプログラムを読み出し、読み出したプログラムをRAM112に展開し、RAM112に展開されたプログラムを実行する。管理サーバ110は、ネットワーク120を介して、第1~第5のFPGAサーバ130a~130eにタスクを割り当て、第1~第5のFPGAサーバ130a~130eからタスクの実行結果を取得し、その実行結果をクライアント100に出力する。 The management server 110 is a computer and includes a CPU 111, a RAM 112, and an HDD unit 113. The CPU 111 reads a program from the HDD unit 113, expands the read program in the RAM 112, and executes the program expanded in the RAM 112. The management server 110 assigns tasks to the first to fifth FPGA servers 130a to 130e via the network 120, acquires task execution results from the first to fifth FPGA servers 130a to 130e, and executes the execution results. Is output to the client 100.
 第1のFPGAサーバ130aは、コンピュータであり、CPU131aと、RAM132aと、HDDユニット133aと、FPGA134aとを有する。同様に、第2~第5のFPGAサーバ130b~130eは、それぞれ、コンピュータであり、CPU131b~131eと、RAM132b~132eと、HDDユニット133b~133eと、FPGA134b~134eとを有する。CPU131a~131eは、それぞれ、HDDユニット133a~133eからプログラムを読み出し、読み出したプログラムをRAM132a~132eに展開し、RAM132a~132eに展開されたプログラムを実行する。FPGA134a~134eは、回路を変更可能な再構成可能回路である。第1~第5のFPGAサーバ130a~130eは、それぞれ、管理サーバ110から依頼されたタスクに対応する回路をFPGA134a~134eに構成し、その回路を実行し、その実行の結果のデータをネットワーク120を介して管理サーバ110に出力する。 The first FPGA server 130a is a computer, and includes a CPU 131a, a RAM 132a, an HDD unit 133a, and an FPGA 134a. Similarly, the second to fifth FPGA servers 130b to 130e are computers, and include CPUs 131b to 131e, RAMs 132b to 132e, HDD units 133b to 133e, and FPGAs 134b to 134e, respectively. The CPUs 131a to 131e read the programs from the HDD units 133a to 133e, respectively, expand the read programs in the RAMs 132a to 132e, and execute the programs expanded in the RAMs 132a to 132e. The FPGAs 134a to 134e are reconfigurable circuits whose circuits can be changed. Each of the first to fifth FPGA servers 130a to 130e configures a circuit corresponding to the task requested from the management server 110 in the FPGAs 134a to 134e, executes the circuit, and transmits the execution result data to the network 120. To the management server 110.
 図2は、第1のFPGAサーバ130aの構成例を示す図である。第1のFPGAサーバ130aの構成を例に説明するが、第2~第5のFPGAサーバ130b~130eの構成も第1のFPGAサーバ130aの構成と同様である。 FIG. 2 is a diagram illustrating a configuration example of the first FPGA server 130a. The configuration of the first FPGA server 130a will be described as an example, but the configurations of the second to fifth FPGA servers 130b to 130e are the same as the configuration of the first FPGA server 130a.
 第1のFPGAサーバ130aは、CPU131aと、RAM132aと、HDDユニット133aと、FPGA134aとを有する。HDDユニット133aは、タスクの回路をFPGA134aに構成するための回路情報(コンフィグレーションコード)201~208と、回路付属情報211~218を記憶する。 The first FPGA server 130a includes a CPU 131a, a RAM 132a, an HDD unit 133a, and an FPGA 134a. The HDD unit 133a stores circuit information (configuration codes) 201 to 208 and circuit attached information 211 to 218 for configuring the task circuit in the FPGA 134a.
 回路情報201は、タスクAの回路をFPGA134aの一番上に構成するための回路情報である。回路情報202は、タスクAの回路をFPGA134aの上から二番目に構成するための回路情報である。回路情報203は、タスクAの回路をFPGA134aの上から三番目に構成するための回路情報である。回路情報204は、タスクAの回路をFPGA134aの一番下に構成するための回路情報である。 The circuit information 201 is circuit information for configuring the task A circuit on the top of the FPGA 134a. The circuit information 202 is circuit information for configuring the task A circuit second from the top of the FPGA 134a. The circuit information 203 is circuit information for configuring the task A circuit third from the top of the FPGA 134a. The circuit information 204 is circuit information for configuring the task A circuit at the bottom of the FPGA 134a.
 回路情報205は、タスクBの回路をFPGA134aの左上に構成するための回路情報である。回路情報206は、タスクBの回路をFPGA134aの右上に構成するための回路情報である。 The circuit information 205 is circuit information for configuring the task B circuit at the upper left of the FPGA 134a. The circuit information 206 is circuit information for configuring the task B circuit on the upper right side of the FPGA 134a.
 回路情報207は、タスクCの回路をFPGA134aの下に構成するための回路情報である。回路情報208は、タスクCの回路をFPGA134aの上に構成するための回路情報である。 The circuit information 207 is circuit information for configuring the task C circuit under the FPGA 134a. The circuit information 208 is circuit information for configuring the task C circuit on the FPGA 134a.
 回路付属情報211~218は、それぞれ、回路情報201~208に付属する情報である。回路付属情報211~218は、それぞれ、回路サイズ221と動作周波数222を含む。回路付属情報211~214は、それぞれ、タスクAの回路の回路サイズ221と動作周波数222を含む。回路付属情報215及び216は、それぞれ、タスクBの回路の回路サイズ221と動作周波数222を含む。回路付属情報217及び218は、それぞれ、タスクCの回路の回路サイズ221と動作周波数222を含む。 The circuit attached information 211 to 218 is information attached to the circuit information 201 to 208, respectively. The circuit ancillary information 211 to 218 includes a circuit size 221 and an operating frequency 222, respectively. The circuit ancillary information 211 to 214 includes a circuit size 221 and an operating frequency 222 of the circuit of task A, respectively. The circuit ancillary information 215 and 216 include the circuit size 221 and the operating frequency 222 of the task B circuit, respectively. The circuit ancillary information 217 and 218 include the circuit size 221 and the operating frequency 222 of the task C circuit, respectively.
 管理サーバ110は、回路情報201~208及び回路付属情報211~128を生成し、回路情報201~208及び回路付属情報211~128を第1~第5のFPGAサーバ130a~130eに出力する。第1~第5のFPGAサーバ130a~130eでは、それぞれ、CPU131a~131eは、HDDユニット133a~133eに回路情報201~208及び回路付属情報211~128を書き込む。 The management server 110 generates circuit information 201 to 208 and circuit attached information 211 to 128, and outputs the circuit information 201 to 208 and circuit attached information 211 to 128 to the first to fifth FPGA servers 130a to 130e. In the first to fifth FPGA servers 130a to 130e, the CPUs 131a to 131e respectively write circuit information 201 to 208 and circuit attached information 211 to 128 in the HDD units 133a to 133e.
 図3(A)は、タスクCの割り当て前のFPGA134a~134cの例を示す図である。第1のFPGA134aには、4個のタスクAの回路と1個のタスクBの回路が構成されている。第2のFPGA134bには、2個のタスクBの回路が構成されている。第3のFPGA134cには、何も回路が構成されていない。管理サーバ110は、タスクCの回路情報207又は208を用いて、FPGA134b又は134cに、タスクCの回路を追加することができる。 FIG. 3A shows an example of FPGAs 134a to 134c before task C is assigned. The first FPGA 134a includes four task A circuits and one task B circuit. In the second FPGA 134b, two task B circuits are configured. No circuit is configured in the third FPGA 134c. The management server 110 can add the circuit of task C to the FPGA 134b or 134c using the circuit information 207 or 208 of task C.
 図3(B)は、管理サーバ110がFPGA134bにタスクCの回路を割り当てた例を示す図である。管理サーバ110は、第2のFPGAサーバ130bにタスクCを割り当てる。すると、第2のFPGAサーバ130bは、HDDユニット133b内の回路情報207をFPGA134bに書き込む。すると、FPGA134bには、タスクCの回路が追加構成される。 FIG. 3B is a diagram illustrating an example in which the management server 110 assigns a task C circuit to the FPGA 134b. The management server 110 assigns task C to the second FPGA server 130b. Then, the second FPGA server 130b writes the circuit information 207 in the HDD unit 133b to the FPGA 134b. Then, a task C circuit is additionally configured in the FPGA 134b.
 図3(C)は、管理サーバ110がFPGA134cに2個のタスクCの回路を割り当てた例を示す図である。管理サーバ110は、第3のFPGAサーバ130cに2個のタスクCを割り当てる。すると、第3のFPGAサーバ130cは、HDDユニット133c内の回路情報207及び208をFPGA134cに書き込む。すると、FPGA134cには、2個のタスクCの回路が追加構成される。 FIG. 3C is a diagram showing an example in which the management server 110 assigns two task C circuits to the FPGA 134c. The management server 110 assigns two tasks C to the third FPGA server 130c. Then, the third FPGA server 130c writes the circuit information 207 and 208 in the HDD unit 133c to the FPGA 134c. Then, two tasks C circuits are additionally configured in the FPGA 134c.
 FPGA134a~134eは、高温になりすぎると、熱雑音による性能低下及び故障率上昇の可能性がある。FPGA134a~134eは、書き込まれる回路により、消費電力(発熱量)が大きく異なるため、温度管理が困難である。FPGA134a~134eの温度管理を行わない場合、FPGA134a~134eが発火する可能性がある。複数のFPGA134a~134eのうちの一部のFPGAにタスクが集中すると、その一部のFPGAが非常に高温になってしまう。そのため、管理サーバ110は、第1~第5のFPGAサーバ130a~130eに適切にタスクを割り当てることにより、効率よく第1~第5のFPGAサーバ130a~130eを運用する。具体的には、管理サーバ110は、第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの全体の消費電力を抑え、かつ1つのFPGAにタスクが集中して、異常高温になることを避けるように、タスクを割り当てる。 If the FPGAs 134a to 134e become too high in temperature, there is a possibility of performance degradation and failure rate increase due to thermal noise. The FPGAs 134a to 134e have power consumption (heat generation amount) greatly different depending on a circuit to be written, so that temperature management is difficult. If the temperature management of the FPGAs 134a to 134e is not performed, the FPGAs 134a to 134e may ignite. When tasks concentrate on a part of the plurality of FPGAs 134a to 134e, the part of the FPGA becomes very hot. Therefore, the management server 110 efficiently operates the first to fifth FPGA servers 130a to 130e by appropriately assigning tasks to the first to fifth FPGA servers 130a to 130e. Specifically, the management server 110 suppresses the overall power consumption of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e, and the task concentrates on one FPGA, resulting in an abnormally high temperature. Assign tasks to avoid.
 図4は、情報処理装置の機能構成例を示す図である。情報処理装置は、クライアント100と、管理サーバ110と、第1~第5のFPGAサーバ130a~130eを有する。管理サーバ110は、モジュール400を有する。モジュール400は、CPU111が実行するプログラムのモジュールである。モジュール400は、FPGA実行管理部401と、実行FPGAサーバ選択部402と、実行可否問い合わせ部403と、タスク受付部404と、閾値制御部405とを有する。 FIG. 4 is a diagram illustrating a functional configuration example of the information processing apparatus. The information processing apparatus includes a client 100, a management server 110, and first to fifth FPGA servers 130a to 130e. The management server 110 has a module 400. The module 400 is a program module executed by the CPU 111. The module 400 includes an FPGA execution management unit 401, an execution FPGA server selection unit 402, an execution availability inquiry unit 403, a task reception unit 404, and a threshold control unit 405.
 第1のFPGAサーバ130aは、RAM132aと、HDDユニット133aと、FPGA134aと、モジュール410とを有する。RAM132aは、閾値記憶部413を有する。HDDユニット133aは、回路情報記憶部411と、回路付属情報記憶部412とを有する。回路情報記憶部411は、図2の回路情報201~208を記憶する。回路付属情報記憶部412は、図2の回路付属情報211~218を記憶する。 The first FPGA server 130a includes a RAM 132a, an HDD unit 133a, an FPGA 134a, and a module 410. The RAM 132a has a threshold storage unit 413. The HDD unit 133 a includes a circuit information storage unit 411 and a circuit attached information storage unit 412. The circuit information storage unit 411 stores the circuit information 201 to 208 in FIG. The circuit attached information storage unit 412 stores circuit attached information 211 to 218 shown in FIG.
 モジュール410は、CPU131aが実行するプログラムのモジュールである。モジュール410は、実行結果処理部414と、実行制御部415と、回路情報管理部416と、回路情報書き込み部417と、消費電力計算部418と、実行可否判定部419とを有する。回路情報書き込み部417は、制御部であり、回路情報をFPGA134aに書き込むことにより、FPGA134aの回路構成を制御することができる。 The module 410 is a module of a program executed by the CPU 131a. The module 410 includes an execution result processing unit 414, an execution control unit 415, a circuit information management unit 416, a circuit information writing unit 417, a power consumption calculation unit 418, and an execution availability determination unit 419. The circuit information writing unit 417 is a control unit, and can control the circuit configuration of the FPGA 134a by writing circuit information to the FPGA 134a.
 第2~第5のFPGAサーバ130b~130eは、それぞれ、上記の第1のFPGAサーバ130aと同様の構成を有する。 The second to fifth FPGA servers 130b to 130e have the same configuration as that of the first FPGA server 130a.
 図5は、情報処理装置の情報処理方法の例を示すシーケンス図である。ここで、第1~第5のFPGAサーバ130a~130eが稼働中であり、第6のFPGAサーバが休止中である場合を例に説明する。第6のFPGAサーバは、第1~第5のFPGAサーバ130a~130eと同様の構成を有する。 FIG. 5 is a sequence diagram illustrating an example of an information processing method of the information processing apparatus. Here, a case will be described as an example where the first to fifth FPGA servers 130a to 130e are in operation and the sixth FPGA server is inactive. The sixth FPGA server has the same configuration as the first to fifth FPGA servers 130a to 130e.
 管理サーバ110は、閾値制御部405により、図6(A)に示すように、第1~第5のFPGAサーバ130a~130eに対して閾値601a~601eの初期値(最大値)を順に設定指示する。第1のFPGAサーバ130aは、実行可否判定部419により、閾値記憶部413に閾値601aの初期値を書き込む。同様に、第2~第5のFPGAサーバ130b~130eは、それぞれ、実行可否判定部419により、閾値記憶部41
3に閾値601b~601eの初期値を書き込む。その後、管理サーバ110は、閾値制御部405により、図6(A)に示すように、一定時間毎に、第1~第5のFPGAサーバ130a~130eに対して閾値601a~601eが減少するように、閾値601a~601eを順に更新指示する。この更新指示は、ステップS507及びS509に対応する。その詳細は、後述する。第1~第5のFPGAサーバ130a~130eは、それぞれ、更新指示を入力すると、実行可否判定部419により、閾値記憶部413の閾値601a~601eが減少するように更新する。管理サーバ110は、閾値制御部405により、図6(A)に示すように、それぞれ、閾値601a~601eが0になると、閾値601a~601eを初期値(最大値)に順に設定指示する。第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの閾値601a~601eは、図6(A)のように、周期的に変化する。
As shown in FIG. 6A, the management server 110 instructs the first to fifth FPGA servers 130a to 130e to set initial values (maximum values) of the threshold values 601a to 601e in order by the threshold control unit 405. To do. The first FPGA server 130 a writes the initial value of the threshold 601 a in the threshold storage unit 413 by the execution availability determination unit 419. Similarly, each of the second to fifth FPGA servers 130b to 130e causes the threshold storage unit 41 to execute the execution determination unit 419.
3 is written with initial values of threshold values 601b to 601e. Thereafter, the management server 110 causes the threshold value control unit 405 to decrease the threshold values 601a to 601e with respect to the first to fifth FPGA servers 130a to 130e at regular intervals as shown in FIG. 6A. Next, the thresholds 601a to 601e are instructed to be updated in order. This update instruction corresponds to steps S507 and S509. Details thereof will be described later. Each of the first to fifth FPGA servers 130a to 130e receives an update instruction, and updates the threshold value 601a to 601e of the threshold value storage unit 413 so that the threshold value 601a to 601e decreases by the execution availability determination unit 419. As shown in FIG. 6A, the management server 110 instructs the threshold values 601a to 601e to be set to initial values (maximum values) in order when the threshold values 601a to 601e become 0, as shown in FIG. 6A. The threshold values 601a to 601e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e periodically change as shown in FIG.
 ステップS501では、クライアント100は、管理サーバ110に対して、タスクCの実行依頼を出力する。すると、管理サーバ110は、タスク受付部404により、そのタスクCの実行依頼を受け付ける。 In step S501, the client 100 outputs a task C execution request to the management server 110. Then, the management server 110 receives an execution request for the task C by the task receiving unit 404.
 次に、ステップS502では、管理サーバ110は、実行可否問い合わせ部403により、稼働中の第1~第5のFPGAサーバ130a~130eに対して、タスクCの実行可否問い合わせを出力する。 Next, in step S502, the management server 110 causes the execution availability inquiry unit 403 to output an inquiry about whether task C can be executed to the first to fifth FPGA servers 130a to 130e in operation.
 次に、ステップS503では、第1~第5のFPGAサーバ130a~130eは、それぞれ、消費電力計算部418により、FPGA134a~134e毎に、現在実行中の回路の消費電力を示す情報と、追加予定のタスクCの回路の消費電力を示す情報とを加算し、全体の消費電力を示す情報を得る。 Next, in step S503, each of the first to fifth FPGA servers 130a to 130e causes the power consumption calculation unit 418 to add information indicating the power consumption of the circuit currently being executed for each FPGA 134a to 134e, and to be added. Information indicating the power consumption of the circuit of task C is added to obtain information indicating the overall power consumption.
 例えば、図3(A)のFPGA134bの例を説明する。実行制御部415は、現在実行中の2個のタスクBの情報を回路情報管理部416に出力する。回路付属情報記憶部412は、回路情報管理部416の制御により、2個のタスクBの回路付属情報215及び216を消費電力計算部418に出力する。消費電力計算部418は、回路付属情報215及び216毎に、回路サイズ221と動作周波数222を乗算することにより消費電力を計算し、それらの消費電力を加算することにより、現在実行中の2個のタスクBの回路の消費電力を得る。次に、消費電力計算部418は、追加予定のタスクCの回路付属情報217の回路サイズ221と動作周波数222を乗算することにより、追加予定のタスクCの回路の消費電力を得る。次に、消費電力計算部418は、現在実行中の2個のタスクBの回路の消費電力と、追加予定のタスクCの回路の消費電力を加算し、全体の消費電力を実行可否判定部419に出力する。 For example, an example of the FPGA 134b in FIG. The execution control unit 415 outputs information on the two tasks B currently being executed to the circuit information management unit 416. The circuit attachment information storage unit 412 outputs the circuit attachment information 215 and 216 of the two tasks B to the power consumption calculation unit 418 under the control of the circuit information management unit 416. The power consumption calculation unit 418 calculates power consumption by multiplying the circuit size 221 and the operating frequency 222 for each of the circuit attached information 215 and 216, and adds the power consumption to obtain the two currently executed. The power consumption of the circuit of task B is obtained. Next, the power consumption calculation unit 418 obtains the power consumption of the circuit of the task C to be added by multiplying the circuit size 221 of the circuit ancillary information 217 of the task C to be added by the operating frequency 222. Next, the power consumption calculation unit 418 adds the power consumption of the circuits of the two tasks B that are currently being executed and the power consumption of the circuit of the task C that is scheduled to be added, and determines whether or not the entire power consumption can be executed. Output to.
 第2のFPGAサーバ130bの例を説明したが、他のFPGAサーバ130a、130c~130eも同様に、全体の消費電力を計算する。 Although the example of the second FPGA server 130b has been described, the other FPGA servers 130a and 130c to 130e similarly calculate the overall power consumption.
 次に、ステップS504では、第1~第5のFPGAサーバ130a~130eは、それぞれ、実行可否判定部419により、閾値記憶部413に記憶されている閾値601a~601eから消費電力計算部418が出力する全体の消費電力を減算し、その減算結果を実行可否回答として管理サーバ110の実行FPGAサーバ選択部402に出力する。 Next, in step S504, the first to fifth FPGA servers 130a to 130e output the power consumption calculation unit 418 from the threshold values 601a to 601e stored in the threshold value storage unit 413 by the execution determination unit 419, respectively. The total power consumption is subtracted, and the result of the subtraction is output to the execution FPGA server selection unit 402 of the management server 110 as an execution propriety answer.
 全体の消費電力が閾値より小さい場合には、減算結果が正値であり、FPGAが追加タスクCの回路を実行可能であることを示す。全体の消費電力が閾値より大きい場合には、減算結果が負値であり、FPGAが追加タスクCの回路を実行不可能であることを示す。 When the overall power consumption is smaller than the threshold value, the subtraction result is a positive value, indicating that the FPGA can execute the circuit of the additional task C. When the overall power consumption is larger than the threshold value, the subtraction result is a negative value, indicating that the FPGA cannot execute the circuit of the additional task C.
 第1~第5のFPGAサーバ130a~130eの実行可否判定部419は、それぞれ
、判断部であり、FPGA134a~134e毎に、現在実行中のタスクの回路の消費電力を示す情報と追加予定のタスクの回路の消費電力を示す情報に基づく消費電力情報と、閾値601a~601eとを基に、追加予定の回路を構成可能か否かを判断する。
The execution determination unit 419 of each of the first to fifth FPGA servers 130a to 130e is a determination unit, and information indicating the power consumption of the circuit of the task currently being executed and the task to be added for each of the FPGAs 134a to 134e. Whether or not the circuit to be added can be configured is determined based on the power consumption information based on the information indicating the power consumption of the circuit and the threshold values 601a to 601e.
 ステップS505では、管理サーバ110は、実行FPGAサーバ選択部402により、第1~第5のFPGAサーバ130a~130eの減算結果の中で最も大きな値を持ち、かつ減算結果が正値である第2のFPGAサーバ130bの実行制御部415にタスクCの実行依頼を出力する。すなわち、管理サーバ110は、第2のFPGAサーバ130bのFPGA134bに、追加予定のタスクCの回路の構成を指示する。 In step S505, the management server 110 causes the execution FPGA server selection unit 402 to have the largest value among the subtraction results of the first to fifth FPGA servers 130a to 130e, and the subtraction result is a positive value. The task C execution request is output to the execution control unit 415 of the FPGA server 130b. That is, the management server 110 instructs the circuit 134 of the task C to be added to the FPGA 134b of the second FPGA server 130b.
 なお、稼働中の第1~第5のFPGAサーバ130a~130eの減算結果のすべてが負値である場合、管理サーバ110は、実行FPGAサーバ選択部402により、休止中の第6のFPGAサーバに対して、タスクCの実行依頼を出力し、第6のFPGAサーバのFPGAにタスクCの回路の構成を指示する。その際、管理サーバ110は、閾値制御部405により、休止中の第6のFPGAサーバに対して、閾値の初期値設定を行う。なお、休止中の第6のFPGAサーバは、可能な限りタスクを割り当てない方が、全体の消費電力を低減することができる。 When all of the subtraction results of the first to fifth FPGA servers 130a to 130e that are in operation are negative values, the management server 110 uses the execution FPGA server selection unit 402 to change to the sixth FPGA server that is suspended. On the other hand, an execution request for task C is output, and the circuit configuration of task C is instructed to the FPGA of the sixth FPGA server. At that time, the management server 110 sets an initial value of the threshold for the suspended sixth FPGA server by the threshold control unit 405. Note that the sixth FPGA server being suspended can reduce the overall power consumption by not assigning tasks as much as possible.
 次に、ステップS506では、第2のFPGAサーバ130bは、実行制御部415により、タスクCの実行開始を指示する。回路情報書き込み部417は、回路情報記憶部411からタスクCの回路情報207を読み出し、回路情報207をFPGA134bに書き込む。これにより、図3(B)に示すように、FPGA134bには、タスクCの回路が追加される。FPGA134bは、2個のタスクBと1個のタスクCの回路の実行を開始する。 Next, in step S506, the second FPGA server 130b instructs the execution control unit 415 to start executing task C. The circuit information writing unit 417 reads the circuit information 207 of task C from the circuit information storage unit 411, and writes the circuit information 207 to the FPGA 134b. As a result, as shown in FIG. 3B, a circuit for task C is added to the FPGA 134b. The FPGA 134b starts executing the circuits of two tasks B and one task C.
 なお、図3(C)のFPGA134cのように、2個のタスクCの回路を並列処理させたい場合には、ステップS502に戻り、再び、管理サーバ110は、タスクCの実行可否問い合わせを出力すればよい。すなわち、管理サーバ110は、実行可否問い合わせ処理を並列処理数だけ繰り返し行えばよい。 If the two task C circuits are to be processed in parallel as in the FPGA 134c of FIG. 3C, the process returns to step S502, and the management server 110 again outputs a task C execution possibility inquiry. That's fine. That is, the management server 110 may repeat the execution availability inquiry process by the number of parallel processes.
 次に、ステップS507では、管理サーバ110は、閾値制御部405により、それぞれ、閾値601a~601eの初期値設定から一定時間経過後に、第1~第5のFPGAサーバ130a~130eに対して、閾値601a~601eを減少させるための更新指示を出力する。 Next, in step S507, the management server 110 uses the threshold control unit 405 to set threshold values for the first to fifth FPGA servers 130a to 130e after a predetermined time has elapsed since the initial setting of the threshold values 601a to 601e. An update instruction for decreasing 601a to 601e is output.
 次に、ステップS508では、稼働中の第1~第5のFPGAサーバ130a~130eは、実行可否判定部419により、閾値記憶部413の閾値が減少するように更新する。そして、第1~第5のFPGAサーバ130a~130eは、それぞれ、消費電力計算部418により、上記と同様に、現在実行中のタスクの回路の消費電力を計算して実行可否判定部419に出力する。そして、第1~第5のFPGAサーバ130a~130eは、それぞれ、実行可否判定部419により、閾値記憶部413に記憶されている閾値601a~601eから消費電力計算部418が出力する消費電力を減算し、その減算結果が正値である場合には、FPGA134a~134eのタスクの回路の実行を継続させる。 Next, in step S508, the first to fifth FPGA servers 130a to 130e in operation are updated by the execution availability determination unit 419 so that the threshold value of the threshold value storage unit 413 decreases. Then, each of the first to fifth FPGA servers 130a to 130e calculates the power consumption of the circuit of the task currently being executed by the power consumption calculation unit 418 and outputs the calculated power consumption to the execution determination unit 419. To do. Then, the first to fifth FPGA servers 130a to 130e respectively subtract the power consumption output from the power consumption calculation unit 418 from the threshold values 601a to 601e stored in the threshold value storage unit 413 by the execution availability determination unit 419. If the subtraction result is a positive value, execution of the task circuits of the FPGAs 134a to 134e is continued.
 次に、ステップS509では、管理サーバ110は、閾値制御部405により、それぞれ、ステップS507の閾値601a~601eの更新から一定時間経過後に、第1~第5のFPGAサーバ130a~130eに対して、閾値601a~601eを減少させるための更新指示を出力する。 Next, in step S509, the management server 110 causes the threshold control unit 405 to respectively perform the first to fifth FPGA servers 130a to 130e after a predetermined time has elapsed since the update of the thresholds 601a to 601e in step S507. An update instruction for decreasing the threshold values 601a to 601e is output.
 次に、ステップS510では、稼働中の第1~第5のFPGAサーバ130a~130
eは、ステップS508と同様に、閾値記憶部413の閾値が減少するように更新する。そして、第1~第5のFPGAサーバ130a~130eは、それぞれ、実行可否判定部419により、閾値記憶部413に記憶されている閾値601a~601eから消費電力計算部418が出力する消費電力を減算する。第1、第3~第5のFPGAサーバ130a、130c~130eは、それぞれ、実行可否判定部419により、その減算結果が正値である場合に、FPGA134a、134c~134eのタスクの回路の実行を継続させる。
Next, in step S510, the first to fifth FPGA servers 130a to 130 in operation.
As in step S508, e is updated so that the threshold value of the threshold value storage unit 413 decreases. Then, the first to fifth FPGA servers 130a to 130e respectively subtract the power consumption output from the power consumption calculation unit 418 from the threshold values 601a to 601e stored in the threshold value storage unit 413 by the execution availability determination unit 419. To do. The first, third to fifth FPGA servers 130a and 130c to 130e respectively execute the task circuits of the FPGAs 134a and 134c to 134e when the subtraction result is a positive value by the execution determination unit 419. Let it continue.
 ステップS511では、第2のFPGAサーバ130bは、実行可否判定部419により、消費電力を閾値601bと比較し、消費電力が閾値601bより大きく、減算結果が負値であると判定する。その場合、ステップS512では、第2のFPGAサーバ130bは、実行可否判定部419により、実行中のタスクの回路のうちの最も消費電力が大きいタスクの回路から順に、消費電力が閾値601bより小さくなるまで、実行を停止させる。第2のFPGAサーバ130bは、実行結果処理部414により、停止したFPGA134bのタスクの回路の途中結果データと停止ポイントを示すリカバリポイントをRAM132bに書き込む。 In step S511, the second FPGA server 130b compares the power consumption with the threshold value 601b by the execution determination unit 419, and determines that the power consumption is larger than the threshold value 601b and the subtraction result is a negative value. In this case, in step S512, the second FPGA server 130b causes the execution availability determination unit 419 to reduce the power consumption from the threshold value 601b in order from the task circuit with the largest power consumption among the circuits of the task being executed. Until execution is stopped. In the second FPGA server 130b, the execution result processing unit 414 writes the intermediate result data of the task circuit of the stopped FPGA 134b and the recovery point indicating the stop point in the RAM 132b.
 次に、ステップS513では、第2のFPGAサーバ130bは、実行結果処理部414により、上記の途中結果データ及びリカバリポイントを含むタスク実行依頼を管理サーバ110のFPGA実行管理部401に出力する。 Next, in step S513, the second FPGA server 130b causes the execution result processing unit 414 to output a task execution request including the intermediate result data and the recovery point to the FPGA execution management unit 401 of the management server 110.
 この際、第2のFPGAサーバ130bは、実行可否判定部419により、図6(A)の閾値610のように、閾値記憶部132aの閾値を0に変更し、タスクの回路の実行が完了すると、閾値記憶部132aの閾値を初期値に設定する。なお、図6(A)の閾値610は、第3のFPGAサーバ130cのFPGA134cの閾値を示すが、第2のFPGAサーバ130bのFPGA134bの閾値も同様である。 At this time, the second FPGA server 130b changes the threshold value of the threshold value storage unit 132a to 0 as shown by the threshold value 610 in FIG. 6A by the execution determination unit 419 and completes the execution of the task circuit. The threshold value of the threshold value storage unit 132a is set to the initial value. The threshold value 610 in FIG. 6A indicates the threshold value of the FPGA 134c of the third FPGA server 130c, but the threshold value of the FPGA 134b of the second FPGA server 130b is the same.
 次に、ステップS514では、FPGA実行管理部401は、そのタスク実行依頼をタスク受付部404に出力する。タスク受付部404は、実行可否問い合わせ部403にタスク実行依頼を出力する。管理サーバ110は、実行可否問い合わせ部403により、第1、第3~第5のFPGAサーバ130a、130c~130eに対して、タスクの実行可否問い合わせを出力する。 Next, in step S514, the FPGA execution management unit 401 outputs the task execution request to the task reception unit 404. The task reception unit 404 outputs a task execution request to the execution availability inquiry unit 403. The management server 110 outputs a task execution permission inquiry to the first, third to fifth FPGA servers 130a and 130c to 130e by the execution permission inquiry section 403.
 次に、ステップS515では、第1、第3~第5のFPGAサーバ130a、130c~130eは、実行可否判定部419により、ステップS503と同様に、FPGA134a、134c~134e毎に、現在実行中の回路の消費電力を示す情報と、追加予定のタスクの回路の消費電力を示す情報とを加算し、全体の消費電力を示す情報を得る。 Next, in step S515, the first, third to fifth FPGA servers 130a, 130c to 130e are currently being executed for each of the FPGAs 134a, 134c to 134e by the execution determination unit 419 in the same manner as in step S503. Information indicating the power consumption of the circuit and the information indicating the power consumption of the circuit of the task to be added are added to obtain information indicating the overall power consumption.
 次に、ステップS516では、第1、第3~第5のFPGAサーバ130a、130c~130eは、実行可否判定部419により、ステップS504と同様に、閾値記憶部413に記憶されている閾値601a、601c~601eから消費電力計算部418が出力する全体の消費電力を減算し、その減算結果を実行可否回答として管理サーバ110の実行FPGAサーバ選択部402に出力する。 Next, in step S516, the first, third to fifth FPGA servers 130a, 130c to 130e are caused to execute the threshold value 601a stored in the threshold value storage unit 413 by the execution availability determination unit 419, similarly to step S504. The total power consumption output from the power consumption calculation unit 418 is subtracted from 601c to 601e, and the subtraction result is output to the execution FPGA server selection unit 402 of the management server 110 as an execution availability answer.
 次に、ステップS517では、管理サーバ110は、実行FPGAサーバ選択部402により、第1、第3~第5のFPGAサーバ130a、130c~130eの減算結果の中で最も大きな値を持ち、かつ減算結果が正値である第1のFPGAサーバ130aの実行制御部415にタスクの実行依頼を出力する。その実行依頼は、上記の途中結果データ及びリカバリポイントを含む。 Next, in step S517, the management server 110 has the largest value among the subtraction results of the first, third to fifth FPGA servers 130a, 130c to 130e by the execution FPGA server selection unit 402, and performs subtraction. A task execution request is output to the execution control unit 415 of the first FPGA server 130a whose result is a positive value. The execution request includes the intermediate result data and the recovery point.
 なお、第1、第3~第5のFPGAサーバ130a、130c~130eの減算結果のすべてが負値である場合、管理サーバ110は、実行FPGAサーバ選択部402により、休止中の第6のFPGAサーバに対して、タスクの実行依頼を出力する。その際、管理サーバ110は、閾値制御部405により、休止中の第6のFPGAサーバに対して、閾値の初期値設定を行う。 If all of the subtraction results of the first, third to fifth FPGA servers 130a, 130c to 130e are negative values, the management server 110 causes the execution FPGA server selection unit 402 to execute the suspended sixth FPGA. The task execution request is output to the server. At that time, the management server 110 sets an initial value of the threshold for the suspended sixth FPGA server by the threshold control unit 405.
 次に、ステップS518では、第1のFPGAサーバ130aは、回路情報書き込み部417により、回路情報記憶部411からタスクの回路情報を読み出し、その回路情報をFPGA134aに書き込む。そして、第1のFPGAサーバ130aは、実行制御部415により、FPGA134aに対して途中結果データを入力し、タスクのリカバリポイントからの実行再開を指示する。これにより、FPGA134aには、タスクの回路が追加される。FPGA134aは、タスクの回路の実行を再開する。 Next, in step S518, the first FPGA server 130a reads the circuit information of the task from the circuit information storage unit 411 by the circuit information writing unit 417, and writes the circuit information in the FPGA 134a. Then, the first FPGA server 130a causes the execution control unit 415 to input the intermediate result data to the FPGA 134a and instruct to resume execution from the recovery point of the task. Thereby, a task circuit is added to the FPGA 134a. The FPGA 134a resumes execution of the task circuit.
 第1のFPGAサーバ130aは、FPGA134aのタスクの回路の実行が完了すると、実行結果処理部414により、FPGA134aの実行結果データを管理サーバ110のFPGA実行管理部401に出力する。FPGA実行管理部401は、タスク受付部404を介して、クライアント100に実行結果データを出力する。 When the execution of the task circuit of the FPGA 134 a is completed, the first FPGA server 130 a outputs the execution result data of the FPGA 134 a to the FPGA execution management unit 401 of the management server 110 by the execution result processing unit 414. The FPGA execution management unit 401 outputs execution result data to the client 100 via the task reception unit 404.
 図6(A)は、第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの閾値601a~601eを示すタイムチャートである。図6(B)は、図6(A)に対応し、第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの消費電力602a~602eを示すタイムチャートである。管理サーバ110は、第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの閾値601a~601eをローテーションにより更新する。これにより、管理サーバ110は、第1~第5のFPGAサーバ130a~130eに対して、ローテーションにより、平均的にタスクの実行依頼をすることができる。図6(B)に示すように、第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの消費電力602a~602eは、偏りがなく、第1~第5のFPGAサーバ130a~130eに対してタスクがほぼ均等に分散して割り当てられていることが分かる。 FIG. 6A is a time chart showing threshold values 601a to 601e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e. FIG. 6B corresponds to FIG. 6A and is a time chart showing power consumption 602a to 602e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e. The management server 110 updates the threshold values 601a to 601e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e by rotation. As a result, the management server 110 can, on average, make a task execution request to the first to fifth FPGA servers 130a to 130e by rotation. As shown in FIG. 6B, the power consumptions 602a to 602e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e are not biased and are compared with the first to fifth FPGA servers 130a to 130e. It can be seen that the tasks are distributed almost evenly.
 図6(C)は、第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの平均消費電力を示すタイムチャートである。第1~第5のFPGAサーバ130a~130eのFPGA134a~134eは、平均消費電力が相互にほぼ同じであり、発熱量も相互にほぼ同じである。管理サーバ110は、第1~第5のFPGAサーバ130a~130eのうちの一部のFPGAサーバにタスクが集中して、異常高温になることを防止することができる。FPGA134a~134eは、高温による性能低下及び故障率上昇を防止することができる。 FIG. 6C is a time chart showing average power consumption of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e. The FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e have substantially the same average power consumption and the same amount of heat generation. The management server 110 can prevent the task from being concentrated on some of the first to fifth FPGA servers 130a to 130e and resulting in an abnormally high temperature. The FPGAs 134a to 134e can prevent performance degradation and failure rate increase due to high temperatures.
 図6(D)は、第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの全体の合計消費電力604と1個当たりのFPGAの最大消費電力605を示すタイムチャートである。管理サーバ110は、第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの全体の合計消費電力604を低減し、かつ1個当たりのFPGAの最大消費電力605を低減していることが分かる。これにより、一部のFPGAサーバのFPGAにタスクが集中して、異常高温になることを防止することができる。 FIG. 6D is a time chart showing the total power consumption 604 of the entire FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e and the maximum power consumption 605 of one FPGA. It can be seen that the management server 110 reduces the total power consumption 604 of the entire FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e, and reduces the maximum power consumption 605 of one FPGA. . As a result, it is possible to prevent the task from being concentrated on the FPGAs of some of the FPGA servers and causing an abnormally high temperature.
 また、FPGA134a~134eを冷却するためのファンを設けることが考えられる。しかし、ファンを設けると、消費電力が増加してしまう。本実施形態は、ファンを設けないので、低消費電力で、FPGA134a~134eの異常高温を防止することができる。 It is also conceivable to provide a fan for cooling the FPGAs 134a to 134e. However, providing a fan increases power consumption. In this embodiment, since no fan is provided, it is possible to prevent abnormally high temperatures of the FPGAs 134a to 134e with low power consumption.
 また、第1~第5のFPGAサーバ130a~130eは、それぞれ、実行可否判定部419により、消費電力を閾値と比較することにより、FPGA134a~134eに追加予定のタスクの回路を構成可能か否かを判断することができる。 Also, each of the first to fifth FPGA servers 130a to 130e compares the power consumption with the threshold value by the execution determination unit 419 to determine whether or not the circuits of tasks scheduled to be added to the FPGAs 134a to 134e can be configured. Can be judged.
 なお、ステップS502及びS514では、管理サーバ110は、FPGA134a~134eの空きスペースに応じて、タスクを追加可能なFPGAサーバにのみ実行可否問い合わせを出力することができる。管理サーバ110は、FPGAサーバ130a~130eのFPGA134a~134eが実行中のタスクの回路を把握している。例えば、図3(A)の第1のFPGAサーバ130aのFPGA134aは、空きスペースが狭く、タスクCの回路を追加することができない。この場合、管理サーバ110は、第1のFPGAサーバ130a以外のFPGAサーバに実行可否問い合わせを出力する。 In steps S502 and S514, the management server 110 can output an execution feasibility inquiry only to the FPGA server to which tasks can be added, according to the free space of the FPGAs 134a to 134e. The management server 110 grasps the circuit of the task being executed by the FPGAs 134a to 134e of the FPGA servers 130a to 130e. For example, the FPGA 134a of the first FPGA server 130a in FIG. 3A has a small empty space and cannot add a task C circuit. In this case, the management server 110 outputs an execution availability inquiry to an FPGA server other than the first FPGA server 130a.
 また、上記では、複数のFPGAサーバ130a~130eがそれぞれ複数のFPGA134a~134eを有する場合を例に説明したが、1つのFPGAサーバが複数のFPGA134a~134eを有していてもよい。また、各FPGAサーバ130a~130eがそれぞれ複数のFPGAを有していてもよい。 In the above description, the case where the plurality of FPGA servers 130a to 130e have the plurality of FPGAs 134a to 134e has been described as an example. However, one FPGA server may have the plurality of FPGAs 134a to 134e. Further, each of the FPGA servers 130a to 130e may have a plurality of FPGAs.
(第2の実施形態)
 図7(A)は、第2の実施形態による第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの閾値701a~701eの例を示すタイムチャートである。本実施形態は、第1の実施形態に対し、管理サーバ110の閾値制御方法が異なる。以下、図4及び図5を参照しながら、本実施形態が第1の実施形態と異なる点を説明する。
(Second Embodiment)
FIG. 7A is a time chart showing an example of threshold values 701a to 701e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e according to the second embodiment. This embodiment differs from the first embodiment in the threshold control method of the management server 110. Hereinafter, the difference of the present embodiment from the first embodiment will be described with reference to FIGS. 4 and 5.
 第1の実施形態では、ステップS505において、稼働中の第1~第5のFPGAサーバ130a~130eの減算結果のすべてが負値である場合、管理サーバ110は、実行FPGAサーバ選択部402により、休止中の第6のFPGAサーバに対して、タスクCの実行依頼を出力する。 In the first embodiment, in step S505, when all the subtraction results of the first to fifth FPGA servers 130a to 130e in operation are negative values, the management server 110 uses the execution FPGA server selection unit 402 to An execution request for task C is output to the suspended sixth FPGA server.
 これに対し、本実施形態では、ステップS505において、稼働中の第1~第5のFPGAサーバ130a~130eの減算結果のすべてが負値である場合、管理サーバ110は、閾値制御部405により、稼働中の第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの閾値701a~701eの合計が第1の値より小さい場合には、図7(A)に示すように、稼働中の第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの閾値701a~701eのうちの最も小さい閾値701aを閾値702に増加させる指示を第1のFPGAサーバ130aに出力する。ここで、閾値制御部405は、稼働中の第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの閾値701a~701eの合計が第1の値を超えない範囲で、閾値701aを閾値702に増加させる指示を出力する。 On the other hand, in this embodiment, when all the subtraction results of the operating first to fifth FPGA servers 130a to 130e are negative values in step S505, the management server 110 uses the threshold control unit 405 to When the sum of the threshold values 701a to 701e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e in operation is smaller than the first value, as shown in FIG. An instruction to increase the smallest threshold value 701a among the threshold values 701a to 701e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e to the threshold value 702 is output to the first FPGA server 130a. Here, the threshold control unit 405 sets the threshold 701a to the threshold 702 within a range where the sum of the thresholds 701a to 701e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e in operation does not exceed the first value. The instruction to increase is output.
 すると、第1のFPGAサーバ130aは、実行可否判定部419により、閾値記憶部413の閾値を増加させる。次に、第1のFPGAサーバ130aは、実行可否判定部419により、閾値記憶部413に記憶されている閾値702から消費電力計算部418が出力する全体の消費電力を減算し、その減算結果を管理サーバ110の実行FPGAサーバ選択部402に出力する。 Then, the first FPGA server 130a increases the threshold value of the threshold value storage unit 413 by the execution possibility determination unit 419. Next, the first FPGA server 130a causes the execution determination unit 419 to subtract the overall power consumption output from the power consumption calculation unit 418 from the threshold value 702 stored in the threshold value storage unit 413, and the subtraction result is obtained. The data is output to the execution FPGA server selection unit 402 of the management server 110.
 管理サーバ110は、実行FPGAサーバ選択部402により、第1のFPGAサーバ130aの減算結果が正値である場合には、第1のFPGAサーバ130aの実行制御部415にタスクCの実行依頼を出力する。その後、第1のFPGAサーバ130aは、ス
テップS506と同様に、タスクCの回路の実行を開始する。
When the subtraction result of the first FPGA server 130a is a positive value, the management server 110 outputs an execution request for task C to the execution control unit 415 of the first FPGA server 130a. To do. Thereafter, the first FPGA server 130a starts executing the circuit of the task C as in step S506.
 また、ステップS517では、第1、第3~第5のFPGAサーバ130a、130c~130eの減算結果のすべてが負値である場合、管理サーバ110は、閾値制御部405により、第1、第3~第5のFPGAサーバ130a、130c~130eのFPGA134a、134c~134eの閾値701a、701c~701eの合計が第1の値より小さい場合には、第1、第3~第5のFPGAサーバ130a、130c~130eのFPGA134a、134c~134eの閾値701a、701c~701eのうちの最も小さい第1のFPGAサーバ130aのFPGA134aの閾値701aを増加させる指示を第1のFPGAサーバ130aに出力する。ここで、閾値制御部405は、稼働中の第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの閾値701a~701eの合計が第1の値を超えない範囲で、閾値701aを増加させる指示を出力する。 In step S517, if all of the subtraction results of the first, third to fifth FPGA servers 130a, 130c to 130e are negative values, the management server 110 causes the threshold control unit 405 to execute the first, third, If the sum of the threshold values 701a and 701c to 701e of the FPGAs 134a and 134c to 134e of the fifth FPGA servers 130a and 130c to 130e is smaller than the first value, the first, third to fifth FPGA servers 130a, An instruction to increase the threshold value 701a of the FPGA 134a of the first FPGA server 130a among the threshold values 701a and 701c to 701e of the FPGAs 134a and 130c to 134e of 130c to 130e is output to the first FPGA server 130a. Here, the threshold control unit 405 increases the threshold 701a in a range where the sum of the thresholds 701a to 701e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e in operation does not exceed the first value. Output instructions.
 すると、第1のFPGAサーバ130aは、実行可否判定部419により、閾値記憶部413の閾値を増加させる。次に、第1のFPGAサーバ130aは、実行可否判定部419により、閾値記憶部413に記憶されている閾値702から消費電力計算部418が出力する全体の消費電力を減算し、その減算結果を管理サーバ110の実行FPGAサーバ選択部402に出力する。 Then, the first FPGA server 130a increases the threshold value of the threshold value storage unit 413 by the execution possibility determination unit 419. Next, the first FPGA server 130a causes the execution determination unit 419 to subtract the overall power consumption output from the power consumption calculation unit 418 from the threshold value 702 stored in the threshold value storage unit 413, and the subtraction result is obtained. The data is output to the execution FPGA server selection unit 402 of the management server 110.
 管理サーバ110は、実行FPGAサーバ選択部402により、第1のFPGAサーバ130aの減算結果が正値である場合には、第1のFPGAサーバ130aの実行制御部415にタスクの実行依頼を出力する。その後、ステップS508では、第1のFPGAサーバ130aは、タスクの回路の実行を再開する。 When the subtraction result of the first FPGA server 130a is a positive value, the management server 110 outputs a task execution request to the execution control unit 415 of the first FPGA server 130a. . Thereafter, in step S508, the first FPGA server 130a resumes execution of the task circuit.
 図7(B)は、図7(A)に対応し、第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの消費電力703a~703eを示すタイムチャートである。管理サーバ110は、一時的なタスクの集中に対応可能にするため、閾値702を一時的に増加させる。これにより、消費電力704が一時的に増加する。ただし、その時以外では、本実施形態では、第1の実施形態と同様に、第1~第5のFPGAサーバ130a~130eのFPGA134a~134eの消費電力703a~703eは、偏りがなく、第1~第5のFPGAサーバ130a~130eのFPGA134a~134eに対してタスクがほぼ均等に分散して割り当てられる。 FIG. 7B corresponds to FIG. 7A and is a time chart showing power consumption 703a to 703e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e. The management server 110 temporarily increases the threshold 702 in order to be able to cope with temporary task concentration. As a result, the power consumption 704 temporarily increases. However, other than that time, in this embodiment, as in the first embodiment, the power consumption 703a to 703e of the FPGAs 134a to 134e of the first to fifth FPGA servers 130a to 130e is not biased, and Tasks are distributed almost uniformly to the FPGAs 134a to 134e of the fifth FPGA servers 130a to 130e.
 本実施形態は、コンピュータがプログラムを実行することによって実現することができる。また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体及び上記のプログラム等のコンピュータプログラムプロダクトも本発明の実施形態として適用することができる。記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。 This embodiment can be realized by a computer executing a program. Further, a computer-readable recording medium in which the above program is recorded and a computer program product such as the above program can also be applied as an embodiment of the present invention. As the recording medium, for example, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a magnetic tape, a nonvolatile memory card, a ROM, or the like can be used.
 なお、上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。 It should be noted that each of the above-described embodiments is merely a specific example for carrying out the present invention, and the technical scope of the present invention should not be construed as being limited thereto. That is, the present invention can be implemented in various forms without departing from the technical idea or the main features thereof.
100 クライアント
101,111,131a~131e CPU
102,112,132a~132e RAM
103,113,133a~133e HDDユニット
110 管理サーバ
120 ネットワーク
130a~130e FPGAサーバ
134a~134e FPGA
100 Client 101, 111, 131a to 131e CPU
102, 112, 132a to 132e RAM
103, 113, 133a to 133e HDD unit 110 Management server 120 Network 130a to 130e FPGA server 134a to 134e FPGA

Claims (10)

  1.  少なくとも1つの再構成可能回路と、
     前記再構成可能回路の回路構成を制御する制御部とを有し、
     前記制御部は、前記再構成可能回路毎の閾値を記憶し、前記再構成可能回路毎に、現在実行中の回路の消費電力を示す情報と追加予定の回路の消費電力を示す情報に基づく消費電力情報と、前記閾値とを基に、追加予定の回路を構成可能か否かを判断することを特徴とする情報処理装置。
    At least one reconfigurable circuit;
    A control unit for controlling the circuit configuration of the reconfigurable circuit,
    The control unit stores a threshold value for each of the reconfigurable circuits, and for each of the reconfigurable circuits, consumption based on information indicating power consumption of a currently executing circuit and information indicating power consumption of a circuit to be added An information processing apparatus that determines whether or not a circuit to be added can be configured based on power information and the threshold value.
  2.  さらに、前記再構成可能回路毎の判断の結果に応じて、前記少なくとも1つの再構成可能回路のうちの1つの再構成可能回路に前記追加予定の回路の構成を指示する選択部を有することを特徴とする請求項1に記載の情報処理装置。 Furthermore, according to the determination result for each of the reconfigurable circuits, a selection unit that instructs the configuration of the circuit to be added to one of the at least one reconfigurable circuit. The information processing apparatus according to claim 1.
  3.  前記閾値は、一定時間毎に減少するように更新されることを特徴とする請求項1又は2に記載の情報処理装置。 3. The information processing apparatus according to claim 1, wherein the threshold value is updated so as to decrease at regular time intervals.
  4.  前記制御部は、前記閾値が更新された場合に、前記閾値が更新された再構成可能回路について、現在実行中の回路の消費電力を示す情報を前記閾値と比較し、前記現在実行中の回路の消費電力を示す情報が前記閾値より大きい場合には、前記現在実行中の回路のうちの少なくとも1つの回路の実行を停止し、
     さらに、前記停止した回路の実行を他の再構成可能回路に再開させる実行管理部を有することを特徴とする請求項1~3のいずれか1項に記載の情報処理装置。
    When the threshold is updated, the control unit compares information indicating the power consumption of the currently executing circuit with the threshold for the reconfigurable circuit with the updated threshold, and the currently executing circuit. If the information indicating the power consumption is greater than the threshold, execution of at least one of the currently executing circuits is stopped,
    4. The information processing apparatus according to claim 1, further comprising an execution management unit that causes another reconfigurable circuit to resume execution of the stopped circuit.
  5.  前記選択部は、前記少なくとも1つの再構成可能回路のうちで前記閾値から前記消費電力情報を減算した値が最も小さい再構成可能回路に前記追加予定の回路の構成を指示することを特徴とする請求項2に記載の情報処理装置。 The selection unit instructs the reconfigurable circuit having the smallest value obtained by subtracting the power consumption information from the threshold among the at least one reconfigurable circuit to configure the circuit to be added. The information processing apparatus according to claim 2.
  6.  前記選択部は、稼働中の前記再構成可能回路のうちで前記消費電力情報が前記閾値より小さい再構成可能回路がない場合には、休止中の再構成可能回路に前記追加予定の回路の構成を指示することを特徴とする請求項2又は5に記載の情報処理装置。 The selection unit is configured to configure the circuit to be added to the reconfigurable circuit that is in a suspended state when there is no reconfigurable circuit whose power consumption information is smaller than the threshold among the reconfigurable circuits that are in operation. The information processing apparatus according to claim 2, wherein
  7.  さらに、稼働中の前記再構成可能回路のうちで前記消費電力情報が前記閾値より小さい再構成可能回路がない場合、かつ前記少なくとも1つの再構成可能回路の閾値の合計が第1の値より小さい場合には、前記少なくとも1つの再構成可能回路の閾値のうちの最も小さい閾値を増加させる閾値制御部を有することを特徴とする請求項2又は5に記載の情報処理装置。 Furthermore, if there is no reconfigurable circuit whose power consumption information is smaller than the threshold among the reconfigurable circuits in operation, and the total threshold of the at least one reconfigurable circuit is smaller than a first value 6. The information processing apparatus according to claim 2, further comprising a threshold control unit configured to increase a smallest threshold among the thresholds of the at least one reconfigurable circuit.
  8.  前記制御部は、回路サイズと動作周波数の乗算により、前記消費電力を示す情報を得ることを特徴とする請求項1~7のいずれか1項に記載の情報処理装置。 The information processing apparatus according to any one of claims 1 to 7, wherein the control unit obtains information indicating the power consumption by multiplying a circuit size and an operating frequency.
  9.  少なくとも1つの再構成可能回路を有する情報処理装置の情報処理方法であって、
     前記情報処理装置が有する記憶部が、前記再構成可能回路毎の閾値を記憶し、
     前記情報処理装置が有する判断部が、前記再構成可能回路毎に、現在実行中の回路の消費電力を示す情報と追加予定の回路の消費電力を示す情報に基づく消費電力情報と、前記閾値とを基に、追加予定の回路を構成可能か否かを判断することを特徴とする情報処理方法。
    An information processing method for an information processing apparatus having at least one reconfigurable circuit,
    The storage unit of the information processing apparatus stores a threshold value for each reconfigurable circuit,
    The determination unit included in the information processing apparatus includes, for each reconfigurable circuit, power consumption information based on information indicating power consumption of a currently executing circuit, information indicating power consumption of a circuit to be added, and the threshold value. And determining whether or not a circuit to be added can be configured based on the information processing method.
  10.  少なくとも1つの再構成可能回路毎の閾値を設定し、
     前記再構成可能回路毎に、現在実行中の回路の消費電力を示す情報と追加予定の回路の消費電力を示す情報に基づく消費電力情報と、前記閾値とを基に、追加予定の回路を構成
    可能か否かを判断する、
     処理をコンピュータに実行させるためのプログラム。
    Set a threshold for at least one reconfigurable circuit;
    For each reconfigurable circuit, a circuit to be added is configured based on power consumption information based on information indicating the power consumption of the currently executing circuit, information indicating the power consumption of the circuit to be added, and the threshold value. Determine whether it is possible,
    A program that causes a computer to execute processing.
PCT/JP2018/006036 2017-04-26 2018-02-20 Information processing device, information processing method and program WO2018198501A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-087673 2017-04-26
JP2017087673A JP6810356B2 (en) 2017-04-26 2017-04-26 Information processing equipment, information processing methods and programs

Publications (1)

Publication Number Publication Date
WO2018198501A1 true WO2018198501A1 (en) 2018-11-01

Family

ID=63919684

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/006036 WO2018198501A1 (en) 2017-04-26 2018-02-20 Information processing device, information processing method and program

Country Status (2)

Country Link
JP (1) JP6810356B2 (en)
WO (1) WO2018198501A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006195945A (en) * 2004-12-14 2006-07-27 Matsushita Electric Ind Co Ltd Electronic device and peak power control method therefor
JP2009271649A (en) * 2008-05-02 2009-11-19 Fujitsu Ltd Data processor, data processing method, and data processing program
US20100026340A1 (en) * 2008-02-29 2010-02-04 Altera Corporation User-Accessible Freeze-Logic for Dynamic Power Reduction and Associated Methods
JP2016115979A (en) * 2014-12-11 2016-06-23 キヤノン株式会社 Image processing apparatus, control method and program thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006195945A (en) * 2004-12-14 2006-07-27 Matsushita Electric Ind Co Ltd Electronic device and peak power control method therefor
US20100026340A1 (en) * 2008-02-29 2010-02-04 Altera Corporation User-Accessible Freeze-Logic for Dynamic Power Reduction and Associated Methods
JP2009271649A (en) * 2008-05-02 2009-11-19 Fujitsu Ltd Data processor, data processing method, and data processing program
JP2016115979A (en) * 2014-12-11 2016-06-23 キヤノン株式会社 Image processing apparatus, control method and program thereof

Also Published As

Publication number Publication date
JP6810356B2 (en) 2021-01-06
JP2018185691A (en) 2018-11-22

Similar Documents

Publication Publication Date Title
US9477460B2 (en) Non-transitory computer-readable storage medium for selective application of update programs dependent upon a load of a virtual machine and related apparatus and method
US9189273B2 (en) Performance-aware job scheduling under power constraints
JP2007041720A (en) Job step execution program and job step execution method
US9195484B1 (en) Dynamic logical zone assignment
JP2010231502A (en) Job processing method, computer-readable recording medium having stored job processing program, and job processing system
US20160308724A1 (en) Policy-Based Resource Management with Target-Driven Remediation on Server
US10171572B2 (en) Server pool management
US20160103714A1 (en) System, method of controlling a system including a load balancer and a plurality of apparatuses, and apparatus
JP5377231B2 (en) Job net control program and job net control device
WO2018198501A1 (en) Information processing device, information processing method and program
US9367361B2 (en) Information processing device, method for processing information, and non-transitory computer-readable recording medium having stored therein information processing program
JP6894266B2 (en) Program update control method and program update control program for information processing device and management control device
JP2010186347A (en) System, method and program for scheduling job
JP2019040325A (en) Power management device, node power management method and node power management program
JP6942977B2 (en) File distribution storage device, program, file distribution management method
JP5786870B2 (en) Distributed system, apparatus, method and program
JP6798900B2 (en) Control devices, information systems and control methods
JP6943089B2 (en) Information processing system, information processing method, and program
JP6373236B2 (en) calculator
JP6721860B2 (en) Information processing system
JP2009110195A (en) Information processing apparatus and system, information processing taking-over control method, and program
JP6302103B2 (en) Job net management apparatus and program
JP6118841B2 (en) Job net management apparatus and program
US10819607B2 (en) Reducing power consumption of a compute node experiencing a bottleneck
JP2010015297A (en) Interruption distributed processing system and interruption distribution method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18790192

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18790192

Country of ref document: EP

Kind code of ref document: A1