Grid computing management device and management method

The management device optimizes grid computing by selecting vehicles' computing devices with low electricity costs, addressing high electricity charges and consumption in conventional systems.

JP7778288B2Active Publication Date: 2025-12-02MAZDA MOTOR CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2021166607
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-10-11
Publication Date
2025-12-02
Estimated Expiration
2041-10-11

AI Technical Summary

Technical Problem

Conventional grid computing technologies do not consider the cost of electricity consumed when vehicles' computing devices perform calculations, leading to potential high electricity charges.

Method used

A management device and method that calculates power consumption and charging costs per unit amount of calculation, selecting computing devices with the lowest electricity cost for job data processing, thereby reducing overall power consumption and electricity charges.

Benefits of technology

Reduces electricity charges and power consumption by optimizing the use of vehicles' computing devices based on their electricity costs, ensuring reliable job data calculation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007778288000001
    Figure 0007778288000001
  • Figure 0007778288000002
    Figure 0007778288000002
  • Figure 0007778288000003
    Figure 0007778288000003
Patent Text Reader

Abstract

To manage grid computing processing in consideration of charges for electricity consumed by a computing device of a vehicle to execute calculation, thereby suppressing electric power rate in executing calculation of grid computing.SOLUTION: A management server 50 manages grid computing processing that causes computing devices 105 mounted on a plurality of vehicles 10 to process job data D1 provided from a client server 30. A control unit 505 of the management server calculates charges for electricity to be used for calculation of the job data on the basis of power consumption per unit computational complexity of each computing device 105, selects one or more computing devices in ascending order of the calculated charges for electricity, allocates the computing devices to the job data, and executes grid computing processing.SELECTED DRAWING: Figure 12
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The technology disclosed herein relates to the management of grid computing. [Background technology]

[0002] Patent Document 1 discloses a system including multiple communication devices and a management server that manages grid computing. The management server includes a signal receiving unit, a status determining unit, and a response transmitting unit. The signal receiving unit receives a signal from a communication device indicating that the communication device is able to participate in grid computing. The status determining unit determines whether each of the multiple processing devices has insufficient processing capacity based on the usage status of the computational resources of each of the multiple processing devices. If the processing capacity of at least one of the multiple processing devices is insufficient, the response transmitting unit transmits an instruction to the communication device to participate in grid computing based on the signal. This configuration makes effective use of the computational resources of the multiple communication devices. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Publication No. 2020-160661 Summary of the Invention [Problem to be solved by the invention]

[0004] However, the conventional technology described in Patent Document 1 does not take into consideration the cost of the electricity consumed when the communication devices of the vehicles participating in grid computing execute calculations.

[0005] The present invention has been made to solve the above-mentioned problems, and aims to provide a management device and a management method that can reduce electricity charges when performing grid computing calculations by managing grid computing processing while taking into account the charges for electricity consumed when a vehicle's computing device performs calculations. [Means for solving the problem]

[0006] In order to achieve the above object, a management device according to the present invention is a management device that manages grid computing processing in which job data provided from a client server is processed by arithmetic units mounted on a plurality of vehicles, and includes a storage unit and a control unit, and the storage unit stores performance information including information indicating power consumption when each of the arithmetic units executes calculations and information indicating the amount of calculation that each of the arithmetic units can perform per unit time. charging cost information including information indicating an average charging fee for a battery of a vehicle in which each of the computing devices is installed; The control unit performs a job reception process for receiving job data from the client server, and calculates the power consumption per unit amount of calculation of each of the arithmetic devices based on the performance information, and calculates the power consumption per unit amount of calculation. and charging cost information The system is configured to execute a job allocation process in which each of the computing devices calculates the cost of electricity used to calculate job data based on the calculation, selects one or more computing devices in order of lowest calculated cost, and assigns the selected computing devices to the job data, and a grid computing process in which the job data is distributed to each of the computing devices assigned to the job data, receives calculation result data of the job data from each of the computing devices, and transmits the received calculation result data to a client server.

[0007] According to the present invention configured as described above, the management device that manages grid computing processes calculates the amount of power consumption per unit amount of calculation of each of the calculation devices, and calculates the amount of power consumption per unit amount of calculation. charging cost information including information indicating an average charging fee for a battery of a vehicle in which each of the computing devices is installed;Based on this, the cost of the electricity used by each of the computing devices to calculate the job data is calculated, and one or more computing devices are selected in order of lowest calculated cost and assigned to the job data, thereby executing grid computing processing. This makes it possible to execute grid computing processing using computing devices that consume a relatively low cost for electricity when executing calculations, thereby reducing power consumption when executing grid computing calculations and electricity charges.

[0008] In the present invention, preferably, the memory unit stores the amount of calculation that each of the calculation devices can calculate in grid computing processing, and the control unit accepts the amount of calculation required to calculate the job data in the job acceptance processing, and selects one or more calculation devices in the job allocation processing so that the sum of the calculation amounts of each of the selected calculation devices is equal to or greater than the amount of calculation of the job data. According to the present invention configured in this manner, when selecting a computing device to be assigned to job data, by taking into consideration the amount of calculation required to calculate the job data and the amount of calculation of each computing device, it is possible to reduce the cost of electricity used to calculate the job data while ensuring that the calculation of the job data is carried out reliably.

[0009] In another aspect, to achieve the above object, the present invention provides a management method for managing, by a computer, grid computing processing in which job data provided from a client server is processed by computing devices mounted on a plurality of vehicles, the management method comprising: managing performance information including information indicating power consumption when each of the computing devices executes a calculation; and information indicating the amount of calculation that each of the computing devices can perform per unit time. charging cost information including information indicating an average charging fee for a battery of a vehicle in which each of the computing devices is installed; a storage step of storing the job data in a storage device; a job receiving step of receiving job data from a client server; and a step of calculating the power consumption per unit amount of calculation of each of the calculation devices based on the performance information. and charging cost informationThe method includes a job allocation step of calculating the cost of electricity used by each of the computing devices to calculate job data based on the calculated cost, selecting one or more computing devices in order of lowest calculated cost, and allocating the selected computing devices to the job data; and a grid computing step of distributing the job data to each of the computing devices allocated to the job data, receiving calculation result data of the job data from each of the computing devices, and transmitting the received calculation result data to a client server. According to the present invention configured in this way, the power consumption per unit amount of calculation of each of the calculation devices is calculated, and the power consumption per unit amount of calculation is calculated. charging cost information including information indicating an average charging fee for a battery of a vehicle in which each of the computing devices is installed; Based on this, the cost of the electricity used by each of the computing devices to calculate the job data can be calculated, and one or more computing devices can be selected in order of lowest calculated cost and assigned to the job data, thereby executing grid computing processing. This makes it possible to execute grid computing processing using computing devices that consume a relatively low cost for the electricity they consume when executing calculations, thereby reducing power consumption when executing grid computing calculations and reducing electricity costs. [Effects of the Invention]

[0010] According to the management device and management method of the present invention, the electricity charges for performing grid computing calculations can be reduced by managing grid computing processing while taking into account the cost of the electricity consumed when the vehicle's computing device performs calculations. [Brief explanation of the drawings]

[0011] [Figure 1] FIG. 1 is a schematic diagram illustrating a configuration of a system according to an embodiment. [Figure 2] FIG. 1 is a conceptual diagram illustrating grid computing. [Figure 3] FIG. 1 is a block diagram illustrating a configuration of a vehicle. [Figure 4] FIG. 2 is a block diagram illustrating the configuration of a user terminal. [Figure 5]FIG. 2 is a block diagram illustrating an example of a client server configuration. [Figure 6] FIG. 2 is a block diagram illustrating an example of the configuration of a facility server. [Figure 7] FIG. 2 is a block diagram illustrating a configuration of a management server. [Figure 8] 10 is a flowchart illustrating a job reception process. [Figure 9] FIG. 10 is a schematic diagram illustrating an example of an image of a job reception screen. [Figure 10] 10 is a flowchart illustrating an example of a calculation cost calculation process. [Figure 11] 10 is a table illustrating an example of a resource table in which calculation results of operation costs are registered. [Figure 12] 10 is a flowchart illustrating a job allocation process. [Figure 13] 1 is a flowchart illustrating a grid computing process. [Figure 14] FIG. 10 is a schematic diagram illustrating an example of an image of a confirmation screen. DETAILED DESCRIPTION OF THE INVENTION

[0012] Hereinafter, the embodiments will be described in detail with reference to the drawings. In the drawings, the same or corresponding parts are designated by the same reference numerals, and the description thereof will not be repeated.

[0013] (system) FIG. 1 illustrates the configuration of a system 1 according to an embodiment. The system 1 includes a plurality of vehicles 10, a plurality of user terminals 20, a client server 30, a facility server 40, and a management server 50. These components can communicate with each other via a communication network 5. Each of the plurality of vehicles 10 is equipped with a computing device 105. Each vehicle 10 can receive power from a charging facility 60 to charge the battery installed in the vehicle 10 and to supply power to the computing device 105. The system 1 may include a plurality of client servers 30. Similarly, the system 1 may include a plurality of facility servers 40.

[0014] [Grid Computing] As shown in FIG. 2, in the system 1 of the embodiment, grid computing is configured by a plurality of computing devices 105, and grid computing processing is performed in which an available computing device 105 among the plurality of computing devices 105 processes job data.

[0015] When the vehicle 10 needs the computing power of the arithmetic device 105, the arithmetic device 105 enters an operating state and uses the computing power of the arithmetic device 105. For example, when the vehicle 10 is traveling, the computing power of the arithmetic device 105 is required for traveling control of the vehicle 10, and the arithmetic device 105 enters an operating state.

[0016] On the other hand, when the computing power of the arithmetic device 105 becomes unnecessary in the vehicle 10, the arithmetic device 105 enters a stopped state, and the computing power of the arithmetic device 105 is not used. For example, when the vehicle 10 stops and the power supply of the vehicle 10 is turned off, the computing power of the arithmetic device 105 becomes unnecessary, and the arithmetic device 105 enters a stopped state.

[0017] Here, when the computing power of the computing device 105 is not required in the vehicle 10, the computing power of the computing device 105 can be provided for grid computing processing, thereby making it possible to effectively utilize the computing power of the computing device 105.

[0018] 〔vehicle〕 The vehicle 10 is owned by a user. The user drives the vehicle 10. In this example, the vehicle 10 is a four-wheeled motor vehicle.

[0019] As shown in FIG. 3, vehicle 10 includes actuator 11, sensor 12, input unit 101, output unit 102, communication unit 103, storage unit 104, and arithmetic device 105. Vehicle 10 is also equipped with battery 106. Battery 106 is charged with power supplied from charging facility 60. In the following description, the fee for power supplied from charging facility 60 will be referred to as the "charging fee" as necessary. The power stored in battery 106 is supplied to on-board devices such as arithmetic device 105. Examples of such vehicles 10 include electric vehicles and plug-in hybrid vehicles.

[0020] The actuators 11 include drive system actuators, steering system actuators, braking system actuators, etc. Examples of drive system actuators include an engine, a transmission, and a motor. Examples of braking system actuators include a brake. Examples of steering system actuators include a steering wheel.

[0021] The sensor 12 acquires various types of information used to control the vehicle 10. Examples of the sensor 12 include a temperature sensor that measures the outside air temperature, a solar radiation sensor that detects the presence or absence of direct sunlight, an exterior camera that captures images outside the vehicle, an interior camera that captures images inside the vehicle, radar that detects objects outside the vehicle, a vehicle speed sensor, an acceleration sensor, a yaw rate sensor, an accelerator opening sensor, a steering sensor, and a brake oil pressure sensor.

[0022] The input unit 101 inputs information and data. Examples of the input unit 101 include an operation unit that is operated to input information corresponding to the operation, a camera that inputs an image showing information, and a microphone that inputs audio showing information. Examples of the operation unit include operation buttons and touch sensors of a car navigation device. The information and data input to the input unit 101 are sent to the calculation device 105.

[0023] The output unit 102 outputs information and data. Examples of the output unit 102 include a display unit that outputs an image representing information, and a speaker that outputs sound representing information. An example of a display unit is the display of a car navigation device. An example of a speaker is the speaker of a car navigation device.

[0024] The communication unit 103 transmits and receives information and data. The information and data received by the communication unit 103 are sent to the calculation device 105.

[0025] The storage unit 104 stores information and data.

[0026] The arithmetic device 105 controls each part of the vehicle 10. In this example, the arithmetic device 105 controls the actuator 11 in accordance with various pieces of information obtained by the sensor 12.

[0027] The arithmetic device 105 includes a processor, a memory, etc. Examples of the processor include a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), etc. The memory stores a program for operating the processor, information and data indicating the processing results of the processor, etc.

[0028] The number of processors installed in the arithmetic device 105 may be one or more. The processor installed in the arithmetic device 105 may be either a CPU or a GPU, or both a CPU and a GPU. In this example, the arithmetic device 105 has both a CPU and a GPU. For example, the arithmetic device 105 is configured by one or more ECUs (Electronic Control Units).

[0029] In this example, the storage unit 104 stores vehicle information D11, vehicle state information D12, driving history information D13, arithmetic unit information D14, and operation history information D15.

[0030] <Vehicle Information> The vehicle information D11 is information related to the vehicle 10. For example, the vehicle information D11 includes a vehicle ID set for the vehicle 10, vehicle performance information indicating the performance of the vehicle, a user ID set for the user, etc. The vehicle ID is an example of vehicle identification information that identifies the vehicle 10. The user ID is an example of user identification information that identifies the user.

[0031] <Vehicle status information> The vehicle state information D12 indicates the state of the vehicle 10. For example, the vehicle state information D12 includes vehicle position information, vehicle communication information, vehicle power supply information, remaining battery capacity information, vehicle charging information, thermal environment information, etc. The vehicle position information indicates the position (latitude and longitude) of the vehicle 10. For example, the vehicle position information can be acquired by a GPS (Global Positioning System). The vehicle communication information indicates the communication status of the vehicle 10. The vehicle power supply information indicates the power supply status of the vehicle 10. For example, the vehicle power supply information indicates whether the ignition power is on or off, whether the accessory power is on or off, etc. The remaining battery capacity information indicates the remaining capacity of the battery 106 installed in the vehicle 10. The vehicle charging information indicates whether the vehicle 10 is being charged at a charging facility and the location of the charging facility. The thermal environment information is information related to the thermal environment of the computing device 105, and specifically indicates the outside temperature of the vehicle 10, whether it is exposed to direct sunlight, etc.

[0032] <Driving history information> The driving history information D13 is information that indicates the driving history of the vehicle 10. For example, the driving history information D13 indicates the position of the vehicle 10 in association with time. The driving history information D13 includes, as information indicating the position of the vehicle 10, information that identifies the position (for example, home, workplace, charging station, etc.) in addition to the latitude and longitude.

[0033] <Calculation device information> The arithmetic device information D14 is information related to the arithmetic device 105. For example, the arithmetic device information D14 includes a arithmetic device ID set in the arithmetic device 105, a vehicle ID set in the vehicle 10 on which the arithmetic device 105 is mounted, a model number of the arithmetic device 105, arithmetic device performance information indicating the performance of the arithmetic device 105, etc. The arithmetic device ID is an example of arithmetic device identification information for identifying the arithmetic device 105. The performance of the arithmetic device 105 indicated in the arithmetic device performance information includes a computing capacity indicating the computing capacity (specifically, the maximum computing capacity) of the arithmetic device 105, the rated power consumption (kW) of the arithmetic device 105, the ratio of the CPU to the GPU in the arithmetic device 105, etc. The computing capacity of the arithmetic device 105 is the amount of calculation that the arithmetic device 105 can perform per unit time (e.g., blocks / h).

[0034] <Operation history information> The operation history information D15 is information that indicates the operation history of the arithmetic device 105. For example, the operation history information D15 indicates the utilization rate of the computing capacity of the arithmetic device 105 in association with time.

[0035] [User terminal] The user terminal 20 is owned by a user. The user operates the user terminal 20 to use various functions. The user can also carry the user terminal 20. Examples of such user terminals 20 include smartphones, tablets, and notebook personal computers.

[0036] As shown in FIG. 4, the user terminal 20 includes an input unit 201, an output unit 202, a communication unit 203, a storage unit 204, and a control unit 205.

[0037] The input unit 201 inputs information and data. Examples of the input unit 201 include an operation unit that is operated to input information corresponding to the operation, a camera that inputs an image showing information, and a microphone that inputs audio showing information. Examples of the operation unit include an operation button and a touch sensor. The information input to the input unit 201 is sent to the control unit 205.

[0038] The output unit 202 outputs information and data. Examples of the output unit 202 include a display unit that outputs an image representing information, and a speaker that outputs sound representing information.

[0039] The communication unit 203 transmits and receives information and data. The information and data received by the communication unit 203 are sent to the control unit 205.

[0040] The storage unit 204 stores information and data.

[0041] The control unit 205 controls each unit of the user terminal 20. The control unit 205 has a processor, a memory, etc. The memory stores a program for operating the processor, information and data indicating the processing results of the processor, etc.

[0042] In this example, the storage unit 204 stores terminal information D21, terminal state information D22, and schedule information D23.

[0043] <Device Information> The terminal information D21 is information related to the user terminal 20. For example, the terminal information D21 includes a user terminal ID set in the user terminal 20, user terminal performance information indicating the performance of the user terminal 20, etc. The user terminal ID is an example of user terminal identification information that identifies the user terminal 20.

[0044] <Device status information> The terminal status information D22 is information indicating the status of the user terminal 20. The terminal status information D22 includes user terminal position information indicating the position of the user terminal 20, user terminal communication status information indicating the communication status of the user terminal 20, and the like.

[0045] <Schedule Information> The schedule information D23 indicates the behavior history and behavior schedule of the user who owns the user terminal 20. For example, the schedule information D23 indicates the user's location and the length of stay (or the planned length of stay) in association with each other. The schedule information D23 also includes the behavior schedule using the vehicle 10 (for example, the departure point, destination, driving route, departure time, arrival time, parking reservation, charging reservation, etc.). The schedule information D23 can be acquired by a schedule function installed in the user terminal 20. Specifically, the user inputs their own behavior history and behavior schedule into the user terminal 20 using the schedule function, thereby obtaining the schedule information D23 indicating the user's behavior history and behavior schedule.

[0046] [Client Server] The client server 30 is owned by a client. The client requests the calculation of job data. Examples of such clients include companies, research institutes, and educational institutions.

[0047] As shown in FIG. 5, the client server 30 includes an input unit 301, an output unit 302, a communication unit 303, a storage unit 304, and a control unit 305.

[0048] The input unit 301 inputs information and data. Examples of the input unit 301 include an operation unit that is operated to input information corresponding to the operation, a camera that inputs an image representing information, and a microphone that inputs audio representing information. Examples of the operation unit include an operation button, a touch sensor, a keyboard, and a mouse. The information and data input to the input unit 301 are sent to the control unit 305.

[0049] The output unit 302 outputs information and data. Examples of the output unit 302 include a display unit that outputs an image representing information, and a speaker that outputs sound representing information.

[0050] The communication unit 303 transmits and receives information and data. The information and data received by the communication unit 303 are sent to the control unit 305.

[0051] The storage unit 304 stores information and data.

[0052] The control unit 305, which controls each unit of the client server 30, includes a processor, a memory, etc. The memory stores a program for operating the processor, information and data indicating the processing results of the processor, etc.

[0053] In this example, the storage unit 304 stores client information D31 and job data D1.

[0054] <Client Information> The client information D31 is information about the client. The client information D31 includes a client ID set for the client, a client-server ID set for the client server 30 owned by the client, a person in charge's name, address, telephone number, etc. The client ID is an example of client identification information that identifies the client. The client-server ID is an example of client-server identification information that identifies the client server 30.

[0055] <Job Data> The job data D1 is data corresponding to a job and is processed to execute the job.

[0056] The job data D1 can be classified by calculation type. Examples of calculation types include CPU-based calculation types and GPU-based calculation types. Job data D1 of the CPU-based calculation type tend to require complex calculations with many conditional branches, such as simulation calculations. Job data D1 of the GPU-based calculation type tend to require a huge amount of simple calculations, such as image processing and machine learning.

[0057] Furthermore, the job data D1 can be classified by processing conditions. Examples of processing conditions include processing conditions that require constant communication and processing conditions that do not require constant communication. Job data D1 with processing conditions that require constant communication requires that the arithmetic device 105 be always available for communication in grid computing processing. Job data D1 with processing conditions that do not require constant communication does not require that the arithmetic device 105 be always available for communication in grid computing processing.

[0058] <Job Information> Note that job information related to a job may be stored in the storage unit 304. The job information includes job name information indicating the name of the job, job content information explaining the content of the job, job data information related to the job data corresponding to the job, job deadline information indicating the deadline for the job, etc. The job data information indicates the calculation type, processing conditions, amount of calculation, etc. of the job data.

[0059] [Facility Server] The facility server 40 is owned by a facility. Users visit the facility. Users can make reservations to visit the facility. Examples of such facilities include stadiums, theaters, supermarkets, restaurants, accommodations, and stores.

[0060] 6, facility server 40 includes input unit 401, output unit 402, communication unit 403, storage unit 404, and control unit 405. The configurations of input unit 401, output unit 402, communication unit 403, storage unit 404, and control unit 405 of facility server 40 are the same as the configurations of input unit 301, output unit 302, communication unit 303, storage unit 304, and control unit 305 of client server 30.

[0061] In this example, the storage unit 404 stores facility information D41 and facility usage information D42.

[0062] Facility Information The facility information D41 is information related to a facility. The facility information D41 includes a facility ID set for the facility, a facility server ID set for the facility server 40 owned by the facility, facility location information indicating the location (latitude and longitude) of the facility, the name of a person in charge, an address, a telephone number, etc. The facility ID is an example of facility identification information that identifies a facility. The facility server ID is an example of facility server identification information that identifies the facility server 40.

[0063] <Facility Usage Information> The facility usage information D42 indicates the usage status (usage history and planned usage) of the facility. Specifically, the facility usage information D42 indicates users who visit the facility and their stay period (or planned stay period) in association with each other.

[0064] [Management Server] The management server 50 manages the operation of the system 1 in which grid computing is configured. The management server 50 is owned by the operator who operates the system 1. The management server 50 is an example of the "management device" of the present invention, and executes the "management method" of the present invention.

[0065] 7, the management server 50 includes an input unit 501, an output unit 502, a communication unit 503, a storage unit 504, and a control unit 505. The configurations of the input unit 501, output unit 502, communication unit 503, storage unit 504, and control unit 505 of the management server 50 are similar to the configurations of the input unit 301, output unit 302, communication unit 303, storage unit 304, and control unit 305 of the client server 30. The storage unit 504 and control unit 505 are examples of components of a management device that manages grid computing processing.

[0066] In this example, the storage unit 504 stores a user table D51, a processing unit table D52, a client table D53, a job table D54, a resource table D55, a job allocation table D56, job data D1, and calculation result data D2.

[0067] <User table> The user table D51 is a table for managing users. For each user, the user table D51 registers a user ID set for the user, a vehicle ID set for the vehicle 10 owned by the user, a calculation device ID set for the calculation device 105 owned by the user, a user terminal ID set for the user terminal 20 owned by the user, and the like.

[0068] <Calculation Unit Table> The arithmetic device table D52 is a table for managing the arithmetic devices 105. The arithmetic device table D52 registers, for each arithmetic device 105, a arithmetic device ID set in the arithmetic device 105, a user ID set for the user who owns the arithmetic device 105, a vehicle ID set for the vehicle 10 in which the arithmetic device 105 is installed, the model number of the arithmetic device 105, and calculation prohibition information indicating conditions for prohibiting the arithmetic device 105 from calculating job data. The calculation prohibition information includes information indicating the location, day of the week, time period, etc. for which calculation of job data is prohibited (for example, charging stations at work between 9:00 and 17:00 on weekdays).

[0069] Furthermore, the arithmetic device table D52 registers, for each arithmetic device 105, the usage history of the vehicle 10 in which the arithmetic device 105 is installed, the charging cost of the power used for calculations by the arithmetic device 105, the performance of the arithmetic device 105 (computing capacity, ratio of CPU to GPU, etc.), etc. In other words, the arithmetic device table D52 includes usage history information D5 indicating the state history and driving history of the vehicle 10 in which each of the multiple arithmetic devices 105 is installed, charging cost information D6 indicating the charging cost of the power used for calculations by each of the multiple arithmetic devices 105, and performance information D7 indicating the performance of each of the multiple arithmetic devices 105. The usage history information D5 stores vehicle state information D12 and driving history information D13 provided by the vehicle 10 from the present time up to a predetermined period of time ago (for example, four weeks ago). The charging cost information D6 includes the charging fee (yen / kWh) of the home charging facility used to charge the battery 106 of the vehicle 10, the charging fee (yen / kWh) of the public charging facility, the location of each charging facility, and the average charging fee for the battery 106 (for example, a value obtained by dividing the total amount of charging fees paid in the previous month by the total amount of charging energy in the previous month, or a value (yen / kWh) calculated each time charging is performed based on the charging fee and the amount of charging energy at that time). If the charging fee for the home charging facility or the public charging facility varies depending on the time period during which charging is performed, the charging cost information D6 includes information indicating the charging fee for each time period. The performance information D7 includes computing capacity information D8 that indicates the computing capacity of each of the multiple computing devices 105, and the computing capacity information D8 includes the amount of calculation that can be performed per unit time and the rated power consumption (kW) of each of the multiple computing devices 105.

[0070] <Client Table> The client table D53 is a table for managing clients. For each client, the client table D53 registers the client ID set for that client, the client server ID set for the client server 30 owned by the client, the name, address, telephone number, etc. of the person in charge of that client.

[0071] <Job Table> The job table D54 is a table for managing jobs requested by clients. For each job, the job table D54 registers the reception number set for that job, the client ID set for the client that requested the job, the name and content of the job, etc. The job table D54 also registers for each job the calculation type and processing conditions of the job data corresponding to that job, the amount of calculation required to calculate the job data, the start time and deadline set for that job, etc.

[0072] <Resource Table> The resource table D55 is a table that the control unit 505 refers to when selecting a computing device 105 to be assigned to job data, and specifically, is a table for managing the results of a computation cost calculation process described later. The resource table D55 registers, for each computing device 105, the model number of the computing device 105, computation availability indicating the days of the week and time periods when the computing device 105 is available for computing job data, a charging flag indicating the days of the week and time periods when the vehicle 10 equipped with the computing device 105 is charged, the charging fee and average charging fee used to charge the battery 106 of the vehicle 10 equipped with the computing device 105, thermal control power consumption indicating the power used to control the temperature of the computing device 105, the rated power consumption of the computing device 105, the computation amount per hour of the computing device 105, power efficiency indicating the power consumption per unit computation amount of the computing device 105, and calculation results of the computation cost of the computing device 105, as well as current values ​​and predicted values ​​for each time period up to a predetermined time (e.g., predicted values ​​for each hour up to 12 hours).

[0073] <Job Allocation Table> The job allocation table D56 is a table for managing the results of the job allocation process described later. For each job, the job allocation table D56 registers the reception number set for that job, the job data corresponding to that job, the arithmetic unit ID set for the arithmetic unit 105 assigned to that job data by the job allocation process, and the like.

[0074] <Job Data> The job data D1 stored in the storage unit 504 is job data D1 accepted by a job acceptance process, which will be described later.

[0075] <Calculation result data> The calculation result data D2 stored in the storage unit 504 is job data calculated by grid computing processing, which will be described later, and indicates the results of that calculation.

[0076] [Update user table] Next, the updating of the user table D51 will be described. The user table D51 is updated by the control unit 505 of the management server 50.

[0077] For example, when a new user joins the system 1, the control unit 505 updates the user table D51 by registering information related to the new user in the user table D51.

[0078] Specifically, the control unit 505 sets a new user ID for the new user, associates the "user ID" set for the new user with the "vehicle ID" set for the vehicle 10 owned by the user, the "computing device ID" set for the computing device 105 installed in the vehicle 10, and the "user terminal ID" set for the user terminal 20 owned by the new user, and registers them in the user table D51.

[0079] It is possible to obtain a "vehicle ID" and a "computing device ID" related to the new user through communication between the vehicle 10 owned by the new user and the management server 50. It is also possible to obtain a "user terminal ID" related to the new user through communication between the user terminal 20 owned by the new user and the management server 50.

[0080] [Updating the arithmetic unit table] Next, the update of the arithmetic unit table D52 will be described. The arithmetic unit table D52 is updated by the control unit 505 of the management server 50.

[0081] For example, when a new arithmetic device 105 joins the system 1, the control unit 505 updates the arithmetic device table D52 by registering information related to the new arithmetic device 105 in the arithmetic device table D52.

[0082] Specifically, the control unit 505 associates the ``computation device ID'' set in the new computation device 105, the ``user ID'' set for the user who owns the computation device 105, the ``vehicle ID'' set in the vehicle 10 in which the computation device 105 is installed, the ``model number'' of the computation device 105, the ``computation prohibition information'' of the computation device 105, the ``usage history'' of the vehicle 10 in which the computation device 105 is installed, and the ``charging cost'' and ``performance'' of the computation device 105, and registers them in the computation device table D52.

[0083] By communication between the management server 50 and the vehicle 10 equipped with the new arithmetic device 105 or the user terminal 20 of the user who owns the vehicle 10, it is possible to obtain the "arithmetic device ID," "vehicle ID," "model number," "prohibited calculation information," "usage history," "charging cost," and "performance" related to the new arithmetic device 105. Also, by referring to the user table D51, it is possible to obtain the "user ID" related to the new arithmetic device 105.

[0084] [Periodic update of the calculation unit table] Furthermore, the "usage history" and "charging cost" of the arithmetic device 105 registered in the arithmetic device table D52 are periodically updated. In other words, the usage history information D5 and the charging cost information D6 included in the arithmetic device table D52 are periodically updated. This periodic update is performed by the control unit 505 of the management server 50.

[0085] <First update process> For example, the "usage history" (in other words, the usage history information D5) in the arithmetic device table D52 may be updated periodically (e.g., weekly) based on the "vehicle state information D12" and "travel history information D13" of the vehicle 10. Specifically, the control unit 505 may execute the following first update process for each arithmetic device 105 registered in the arithmetic device table D52.

[0086] In the first update process, the control unit 505 requests the vehicle 10 equipped with the arithmetic device 105 to access the "vehicle state information D12" and the "driving history information D13." In response to the request, the arithmetic device 105 of the vehicle 10 permits access to the "vehicle state information D12" and the "driving history information D13." The control unit 505 updates the "usage history" of the vehicle 10 registered in the arithmetic device table D52 based on the state of the vehicle 10 indicated in the vehicle state information D12 and the driving history indicated in the driving history information D13.

[0087] <Second update process> Furthermore, the "charging cost" (in other words, the charging cost information D6) in the arithmetic device table D52 may be updated periodically (for example, monthly) based on information provided from the user terminal 20. Specifically, the control unit 505 may execute the following second update process for each arithmetic device 105 registered in the arithmetic device table D52.

[0088] In the second update process, the control unit 505 requests information necessary for calculating the average charging fee from the control unit 205 of the user terminal 20 (for example, the total amount paid for charging fees for the vehicle 10 in the previous month). In response to the request, the control unit 205 of the user terminal 20 causes the output unit 202 to output a message requesting the user to input the necessary information. When the user inputs the necessary information (for example, the total amount paid for charging fees for the vehicle 10 in the previous month) to the input unit 201 in response to this message, the control unit 205 of the user terminal 20 provides the information to the control unit 505. The control unit 505 calculates the average charging fee based on the information provided from the control unit 205 of the user terminal 20 and information (for example, the total amount of charging energy in the previous month) acquired from the vehicle status information D12 accumulated in the usage history information D5 of the arithmetic device table D52. Next, the control unit 505 updates the average charging fee in the "charging cost" registered in the arithmetic device table D52 based on the calculated average charging fee.

[0089] <Third update process> Furthermore, the "charging cost" in the arithmetic device table D52 (in other words, the charging cost information D6) may be updated every time the battery 106 of the vehicle 10 is charged, based on information provided from the vehicle 10. Specifically, the control unit 505 may execute the following third update process for each arithmetic device 105 registered in the arithmetic device table D52.

[0090] In the third update process, when the arithmetic device 105 of the vehicle 10 charges the battery 106, it transmits the amount of charging energy and the charging fee for that charging to the control unit 505 of the management server 50 at the end of charging. The control unit 505 calculates the average charging fee after this charging based on the amount of charging energy and the charging fee received from the arithmetic device 105 and the average charging fee in the "charging cost" registered in the arithmetic device table D52 for that arithmetic device 105. Next, the control unit 505 updates the average charging fee in the "charging cost" registered in the arithmetic device table D52 based on the calculated average charging fee.

[0091] [Update client table] Next, the update of the client table D53 will be described. The client table D53 is updated by the control unit 505 of the management server 50.

[0092] For example, when a new client joins the system 1, the control unit 505 updates the client table D53 by registering information related to the new client in the client table D53.

[0093] Specifically, the control unit 505 sets a new client ID for the new client, associates the "client ID" set for the new client with the "client server ID" set for the client server 30 owned by the new client, and the "person in charge," "address," and "telephone number" of the new client, and registers them in the client table D53.

[0094] By communication between the client server 30 and the management server 50, it is possible to obtain the "client server ID", "person in charge", "address" and "telephone number" of the new client.

[0095] [Resource table update] Next, the update of the resource table D55 will be described. The resource table D55 is updated by the control unit 505 of the management server 50.

[0096] For example, when a new arithmetic device 105 joins the system 1, the control unit 505 updates the resource table D55 by registering information related to the new arithmetic device 105 in the resource table D55.

[0097] Specifically, the control unit 505 associates the "user ID" set for the user who owns the new arithmetic device 105, the "model number" of the arithmetic device 105, the "availability of calculation" of the arithmetic device 105, the "charging flag" of the arithmetic device 105, and information necessary to calculate the charging fee (calculation cost) for the electricity consumed when the arithmetic device 105 performs calculations ("charging fee," "average charging fee," "rated power consumption," and "calculation volume per hour"), and registers them in the resource table D55.

[0098] It is possible to obtain the "model number," "charging fee," "average charging fee," "rated power consumption," and "calculation amount per hour" related to the new arithmetic device 105 by communication between the vehicle 10 equipped with the new arithmetic device 105, the user terminal 20 of the user who owns the vehicle 10, and the management server 50. It is also possible to obtain the "user ID" related to the new arithmetic device 105 by referring to the user table D51.

[0099] [Regular update of resource table] Furthermore, the "operation availability" and "charging flag" of the arithmetic device 105 registered in the resource table D55 are periodically updated. This periodic updating is performed by the control unit 505 of the management server 50.

[0100] <Fourth update process> For example, the "operation availability" and "charging flag" in the resource table D55 may be updated periodically (e.g., weekly) based on the "usage history information D5" in the arithmetic device table D52. Specifically, the control unit 505 may execute the following fourth update process for each arithmetic device 105 registered in the resource table D55.

[0101] In the fourth update process, based on the calculation prohibition information registered in the calculation device table D52 and the driving history information D13 included in the usage history information D5 registered in the calculation device table D52, the control unit 505 registers in the resource table D55 the days of the week and time periods when the vehicle 10 was parked under conditions (location, day of the week, time period, etc.) when calculation of job data is not prohibited from the present time up to a predetermined period of time (for example, four weeks ago) as days of the week and time periods when calculation is available for the calculation device 105 (for example, the value of ``calculation availability'' for that day of the week and time period is set to ``1''), and registers other days of the week and time periods (for example, days of the week and time periods when the vehicle 10 was driving, or days of the week and time periods when the vehicle 10 was parked under conditions when calculation of job data is prohibited) in the resource table D55 as days of the week and time periods when calculation is not available for the calculation device 105 (for example, the value of ``calculation availability'' for that day of the week and time period is set to ``0'').

[0102] Furthermore, based on the "availability of computation" registered in the resource table D55 and the vehicle status information D12 included in the usage history information D5 registered in the computation device table D52, the control unit 505 registers in the resource table D55, among the days of the week and time periods when the computation device 105 is "available for computation," the days of the week and time periods when the vehicle 10 is being charged from the charging facility 60 at the same location, as the days of the week and time periods when the power supplied from the charging facility 60 is available for computation (for example, the "charging flag" for that day of the week and time period is set to "1"). At this time, the control unit 505 identifies the charging facility 60 based on the location where the vehicle 10 is being charged from the charging facility 60, and registers the charging fee for that charging facility 60 in the resource table D55 as the charging fee for that day of the week and time period. In addition, among the days and time periods when the calculation device 105 is "available for calculation," the days and time periods when the vehicle 10 is not being charged from the charging equipment 60 at the same location are registered in the resource table D55 as days and time periods when the power of the battery 106 of the vehicle 10 is used for calculation (for example, the "charging flag" for those days and time periods is set to "0").

[0103] <5th update process> Furthermore, the "computation availability" and "charging flag" in the resource table D55 may be updated periodically (for example, daily) based on information provided from the user terminal 20. Specifically, the control unit 505 may execute the following fifth update process for each computing device 105 registered in the resource table D55.

[0104] In the fifth update process, the control unit 505 requests the control unit 205 of the user terminal 20 to access the "schedule information D23." In response to the request, the control unit 205 of the user terminal 20 permits access to the "schedule information D23." Based on the planned travel schedule of the vehicle 10 indicated in the schedule information D23, the control unit 505 excludes the days of the week and time periods on which the vehicle 10 is scheduled to move and the days of the week and time periods on which the vehicle 10 is scheduled to be parked under conditions in which calculation of job data is prohibited from the days of the week and time periods on which the calculation device 105 is registered as "available for calculation" in the resource table D55 (for example, the control unit 505 changes the value of "availability of calculation" for the relevant days of the week and time periods from "1" to "0"). In addition, based on the planned activities of the vehicle 10 shown in the schedule information D23, the control unit 505 adds the days of the week and time periods on which the vehicle 10 is scheduled to be parked under conditions where calculation of job data is not prohibited to the days of the week and time periods for which the calculation device 105 is registered as ``calculation available'' in the resource table D55 (for example, changes the value of ``calculation available'' for the corresponding days of the week and time periods from ``0'' to ``1'').

[0105] Furthermore, based on the planned activities of the vehicle 10 shown in the schedule information D23, the control unit 505 adds the day of the week and time period when charging of the vehicle 10 is scheduled among the days of the week and time periods that are "available for calculation" by the calculation device 105 in the resource table D55 to the days of the week and time periods registered in the resource table D55 as days of the week and time periods when power supplied from the charging facility 60 is available for calculation (for example, the control unit 505 changes the "charging flag" for the corresponding day of the week and time period to "1"). In this case, the charging fee at the charging facility 60 where charging is scheduled can be registered as the "charging fee" in the resource table D55.

[0106] [Processing by the control unit (management method)] The control unit 505 performs job reception processing, operation cost calculation processing, job allocation processing, and grid computing processing.

[0107] [Job acceptance process (job acceptance step)] Next, the job reception process will be described with reference to Fig. 8. In the job reception process, job data D1 for which a calculation is requested by a client is received. For example, the control unit 505 performs the following process each time a calculation of job data D1 is requested by a client.

[0108] <Step S11> First, the management server 50 accepts a job request from a client. Specifically, in response to an operation by a person in charge of the client, the client server 30 transmits a job request application to the management server 50. In response to the application, the control unit 505 of the management server 50 performs the following processing.

[0109] The control unit 505 requests the client server 30 to transmit information required to accept the job (specifically, client information related to the client requesting the job and job information related to the job). In this example, the control unit 505 transmits image data of the job acceptance screen to the client server 30. The control unit 305 of the client server 30 reproduces the image of the job acceptance screen from the image data, and causes the output unit 302 (display unit) to output (display) the image.

[0110] 9, the job reception screen is a screen for inputting information required to receive a job. The job reception screen has a client name input field R101 for inputting the client name, a person in charge name input field R102 for inputting the name of the person in charge of the client, an address input field R104 for inputting the client's address, a job name input field R111 for inputting the name of the job, a job content input field R112 for inputting a description of the job content, a calculation type input field R113 for inputting the calculation type of job data corresponding to the job, a processing condition input field R114 for inputting the processing conditions of the job data, a calculation amount input field R115 for inputting the calculation amount of the job data, a delivery date input field R116 for inputting the delivery date of the job, and a register button B100.

[0111] The person in charge of the client operates the input unit 301 (operation unit) of the client server 30 to input the necessary information into the job reception screen. This inputs client information about the client requesting the job and job information about the job. Then, after completing input of this information, the person in charge of the client operates the input unit 301 (operation unit) of the client server 30 to press the registration button B100 on the job reception screen. When the registration button B100 is pressed, the control unit 305 of the client server 30 transmits the information (client information and job information) input into the job reception screen to the management server 50. The control unit 505 of the management server 50 receives the client information and job information.

[0112] Furthermore, instead of acquiring the information input on the job reception screen, the control unit 505 may acquire the client information D31 and the job information from the storage unit 304 of the client server 30. In this case, the control unit 305 of the client server 30 responds to a request from the control unit 505 of the management server 50 and transmits the client information D31 and the job information to the management server 50. The control unit 505 of the management server 50 receives the client information D31 and the job information.

[0113] Next, the control unit 505 requests the client server 30 to transmit job data D1 corresponding to the job. In response to the request, the control unit 305 of the client server 30 transmits the job data D1 corresponding to the job to the management server 50. The control unit 505 of the management server 50 receives the job data D1.

[0114] <Step S12> Next, the control unit 505 of the management server 50 analyzes the job data D1 received in step S11. Specifically, the control unit 505 analyzes the calculation type, processing conditions, amount of calculation, etc. of the job data D1. Then, the control unit 505 modifies the job information received in step S11 based on the results of the analysis of the job data D1.

[0115] If the job information received in step S11 is sufficiently reliable, the process of step S12 may be omitted.

[0116] <Step S13> Next, the control unit 505 of the management server 50 associates the client information received in step S11 with the job information corrected as necessary in step S12 (or the job information received in step S11), and registers them in the job table D54. The control unit 505 also stores the job data D1 received in step S11 in the storage unit 504.

[0117] [Operation cost calculation process (operation cost calculation step)] Next, the computation cost calculation process will be described with reference to Fig. 10 and Fig. 11. In the computation cost calculation process, the current value and predicted value of the charging fee (computation cost) for the power consumed when each of the multiple computation devices 105 executes the calculation of the job data are calculated based on the computation device table D52 and the resource table D55 stored in the storage unit 504, and are registered in the resource table D55. For example, the control unit 505 periodically (for example, every hour) performs the following process.

[0118] <Step S21> First, the control unit 505 refers to the resource table D55 and extracts the arithmetic devices 105 that can be used to calculate the job data for each time period from the current time to a predetermined time (for example, 12 hours later). Specifically, the control unit 505 extracts the arithmetic devices 105 for which the value of "Availability of calculation" in the resource table D55 is "1" for each time period from the current time to a predetermined time.

[0119] <Step S22> Next, for each of the arithmetic devices 105 extracted in step S21, the control unit 505 calculates the current value or predicted value of the calculation cost for the time period during which the arithmetic device 105 is available for calculating job data.

[0120] Specifically, the control unit 505 first acquires the charging fee for the power supplied to the arithmetic device 105. At this time, if the charging flag for the time slot in which the arithmetic device 105 is available for calculation is "1" in the resource table D55, the arithmetic device 105 can perform calculations using power supplied from the charging facility 60, and therefore the control unit 505 acquires the "charging fee" for that time slot in the resource table D55 as the charging fee for the power supplied to the arithmetic device 105. On the other hand, if the charging flag is "0", the arithmetic device 105 can perform calculations using power supplied from the battery 106, and therefore the control unit 505 acquires the "average charging fee" in the resource table D55 as the charging fee for the power supplied to the arithmetic device 105.

[0121] Furthermore, the control unit 505 acquires thermal control power consumption indicating the power used for temperature control of the arithmetic device 105. Specifically, the control unit 505 determines the current outside temperature and presence or absence of direct sunlight for the vehicle 10 equipped with the arithmetic device 105 based on the outside temperature and presence or absence of direct sunlight for the vehicle 10 included in the usage history information D5 of the arithmetic device table D52. The control unit 505 also estimates the future outside temperature and presence or absence of direct sunlight for the vehicle 10 based on weather forecast information acquired via the communication unit 503, the usage history information D5 of the arithmetic device table D52, and schedule information D23 provided from the user terminal 20. For example, the control unit 505 estimates the outside temperature and presence or absence of direct sunlight for the vehicle 10 based on the planned travel schedule of the vehicle 10 shown in the schedule information D23 and the weather forecast information for the planned location during the time period when the arithmetic device 105 is available for calculation. Furthermore, if there is no planned activity for the vehicle 10, the control unit 505 identifies, based on the usage history information D5, a location where the vehicle 10 has frequently been located over a predetermined period of time in the past (for example, four weeks) during the time period when the calculation device 105 can perform calculations. Then, based on the history of the presence or absence of direct sunlight at the identified location and weather forecast information, the control unit 505 estimates the outside temperature of the vehicle 10 and the presence or absence of direct sunlight during the time period when the calculation device 105 can perform calculations (for example, if the weather forecast information for the time period when the calculation device 105 can perform calculations at the identified location is "fine" and the history of direct sunlight at that location during that time period is "present," it is estimated that there is direct sunlight).

[0122] Then, when the outside air temperature during the time period when the arithmetic device 105 can use the calculation is above a predetermined temperature (for example, 30°C or above) and there is direct sunlight, the control unit 505 assumes that the cooling control of the arithmetic device 105 will be activated, and acquires the power consumption for this (for example, 0.1 kW) as the heat control power consumption. Also, when the outside air temperature during the time period when the arithmetic device 105 can use the calculation is below a predetermined temperature (for example, below 10°C) and there is no direct sunlight, the control unit 505 assumes that the warming control of the arithmetic device 105 will be activated, and acquires the power consumption for this (for example, 0.1 kW) as the heat control power consumption.

[0123] Next, the control unit 505 calculates the sum of the rated power consumption of the arithmetic device 105 registered in the resource table D55 and the acquired thermal control power consumption as the power consumption used by the arithmetic device 105 to calculate the job data. This power consumption (kW) is divided by the amount of calculation per hour (blocks / h) of the arithmetic device 105 registered in the resource table D55 to calculate the power efficiency (kWh / block) indicating the power consumption per unit amount of calculation of the arithmetic device 105. This power efficiency is multiplied by the charging fee (yen / kWh) to calculate the calculation cost (yen / block). In other words, the smaller the thermal control power consumption, the lower the calculation cost; the smaller the power efficiency value (power consumption per unit amount of calculation), the lower the calculation cost; and the cheaper the charging fee, the lower the calculation cost.

[0124] <Step S23> Next, the control unit 505 registers the calculated operation costs for the arithmetic devices 105 that can be used to calculate the job data for each time period from the current time to a predetermined time in the resource table D55. This updates the resource table D55.

[0125] In the example of FIG. 11 , for example, the calculation device 105 corresponding to user "A" has a value of "1" for "calculation availability" at 1:00 PM, 2:00 PM, and 10:00 PM. Therefore, in step S21, the control unit 505 extracts the calculation device 105 corresponding to "A" as the calculation device 105 that can be used to calculate job data during the time periods of 1:00 PM, 2:00 PM, and 10:00 PM. The charging flag of this calculation device 105 is "0" at 1:00 PM and 2:00 PM, and "1" at 10:00 PM. Therefore, in step S22, the control unit 505 acquires an "average charging fee" of 28 yen / kWh as the charging fee for the calculation device 105 at 1:00 PM and 2:00 PM, and acquires a "charging fee" of 25 yen / kWh as the charging fee for the calculation device 105 at 10:00 PM. The rated power consumption of this arithmetic device 105 is 0.1 (kW), and the thermal control power consumption is 0.1 (kW) at 1:00 PM and 2:00 PM, and 0 (kW) at 10:00 PM. The amount of calculation per hour of this arithmetic device 105 is 1 (block / h). Therefore, in step S22, the control unit 505 calculates the calculation cost of this arithmetic device 105 at 1:00 PM and 2:00 PM as (0.1 + 0.1) ÷ 1 × 28 = 5.6 (yen / block), and the calculation cost at 10:00 PM as (0.1 + 0) ÷ 1 × 25 = 2.5 (yen / block). Similarly, the control unit 505 can calculate the calculation cost for each arithmetic device 105 available for calculating job data.

[0126] [Job allocation process (job allocation step)] Next, the job allocation process will be described with reference to Fig. 12. The job allocation process is a process of allocating a computing device 105 available for grid computing processing from among the multiple computing devices 105 to the job data D1 accepted in the acceptance process based on the result of the computation cost calculation process. For example, after the job acceptance process is completed, the control unit 505 performs the following process.

[0127] <Step S31> First, the control unit 505 selects a job to be subjected to the job allocation process from among the jobs registered in the job table D54. For example, the control unit 505 selects the job with the earliest start time from among the jobs registered in the job table D54. The start time of the job may be determined by the control unit 505 based on the due date of the job, or may be specified via the input unit 301 of the client server 30 in the job reception process. Then, the control unit 505 selects job data D1 corresponding to the job to be subjected to the job allocation process from the job data D1 stored in the storage unit 504.

[0128] <Step S32> Next, the control unit 505 selects the arithmetic devices 105 in ascending order of arithmetic cost based on the arithmetic costs of each of the arithmetic devices 105 registered in the resource table D55 until the sum of the arithmetic volume per hour of each arithmetic device 105 reaches the arithmetic volume required in the selected job data D1. The lower the power efficiency value (power consumption per unit arithmetic volume), the lower the arithmetic cost, and the cheaper the charging fee, the lower the arithmetic cost. Therefore, the arithmetic device 105 with the lowest power consumption per unit arithmetic volume and the lowest charging fee is selected preferentially.

[0129] Specifically, the control unit 505 refers to the job table D54 to obtain the amount of calculation required to calculate the job data D1, and then refers to the resource table D55 to obtain the amount of calculation per hour and the calculation cost of each calculation device 105 in the time period including the start time of the job corresponding to the job data D1, and selects the calculation device 105 in ascending order of calculation cost until the amount of calculation required to calculate the job data D1 is reached.

[0130] For example, if the amount of calculation required to calculate job data D1 for a job starting at 12 o'clock is 2 code blocks, in the example of Fig. 11, of the calculation devices 105 available for calculation at 12 o'clock, users "B" and "C," the one with the lowest calculation cost is "C." The hourly calculation amount of "C" is "2," which satisfies the amount of calculation required to calculate job data D1, so the control unit 505 selects the calculation device 105 corresponding to "C."

[0131] 11, when the amount of calculation required to calculate job data D1 for a job starting at 2:00 PM is three code blocks, of the calculation devices 105 "A" and "C" that are available for calculation at 2:00 PM, "C" has the lowest calculation cost. The amount of calculation per hour for "C" is "2," which does not meet the amount of calculation required to calculate job data D1, and adding the amount of calculation per hour for "A," "1," will meet the amount of calculation required to calculate the job data. Therefore, the control unit 505 selects the calculation device 105 corresponding to "C" for calculating two blocks of job data D1, and selects the calculation device 105 corresponding to "A" for calculating the remaining one block.

[0132] 11, among the available arithmetic units 105 "A," "B," and "C" that can be used for calculations at 10:00 p.m., "B" has the lowest calculation cost, followed by "C," and then "A." The calculation amount per hour for "B" is 2, the calculation amount per hour for "C" is 2, and the calculation amount per hour for "A" is 1. Therefore, the control unit 505 selects the arithmetic units 105 corresponding to "B" and "C" for calculating two blocks of job data D1, respectively, and selects the arithmetic unit 105 corresponding to "A" for calculating the remaining block.

[0133] <Step S33> Next, the control unit 505 assigns the arithmetic device 105 selected in step S32 to the job data D1 selected in step S31. Then, the control unit 505 registers job assignment result information indicating which arithmetic device 105 is assigned to which job data D1 in the job assignment table D56.

[0134] [Grid Computing Processing] Next, the grid computing process will be described with reference to Fig. 13. In the grid computing process, the arithmetic device 105 assigned to the job data D1 in the job allocation process processes the job data D1. For example, after the job allocation process is completed, when the start time of the job data D1 arrives, the control unit 505 performs the following process.

[0135] <Step S41> First, the control unit 505 inquires of each of the arithmetic units 105 assigned to the job data D1 in the job allocation process whether or not the arithmetic units 105 are available for computing the job data.

[0136] <Step S42> Next, the control unit 505 assigns the currently available arithmetic devices 105 for calculating the job data to the job data D1 to which the arithmetic device 105 responded to the inquiry in step S41 by saying that it is unavailable for calculating the job data (for example, the arithmetic device 105 is in use because the vehicle 10 on which the arithmetic device 105 is installed is moving, the remaining charge of the battery 106 of the vehicle 10 on which the arithmetic device 105 is installed is less than a predetermined value (for example, 40%), or the location or time period corresponds to a time when calculation of the job data is prohibited), or to the arithmetic device 105 that was unable to respond to the inquiry in step 41 because the vehicle 10 is unable to communicate, in order of lowest current value of calculation cost, until the amount of calculation required for calculating the job data D1 is satisfied. The specific procedure for allocating the arithmetic devices 105 is the same as the job allocation process shown in FIG. 12.

[0137] <Step S43> Next, the control unit 505 refers to the job allocation table D56 and distributes the job data D1 to be subjected to grid computing processing to the arithmetic devices 105 assigned to the job data D1 in the job allocation processing. Specifically, the control unit 505 transmits a portion of the job data D1 to each of the arithmetic devices 105 assigned to the job data D1. As a result, the job data D1 is processed in parallel by the arithmetic devices 105 assigned to the job data D1.

[0138] <Step S44> Next, when each of the arithmetic devices 105 completes the calculation of the data (part of the job data D1) transmitted to that arithmetic device 105, it transmits the partial calculation result data obtained by the calculation to the management server 50. The control unit 505 of the management server 50 receives the partial calculation result data transmitted from the arithmetic device 105 and stores the partial calculation result data in the memory unit 504.

[0139] <Step S45> The control unit 505 determines whether all of the arithmetic devices 105 to which the job data D1 was distributed in step S43 have completed calculations. If all of the arithmetic devices 105 have completed calculations (step S45: YES), the process of step S46 is performed; if not (step S45: NO), the process of step S44 is performed.

[0140] <Step S46> When all of the arithmetic devices 105 have completed the calculations, the control unit 505 generates calculation result data D2 (calculation result data D2 indicating the results of the calculation of the job data D1) corresponding to the job data D1 that is the target of the grid computing process by combining the partial calculation result data stored in the storage unit 504. Then, the control unit 505 transmits the calculation result data D2 corresponding to the job data D1 that is the target of the grid computing process to the client server 30 of the client that requested the calculation of the job data D1.

[0141] <Step S47> Next, a reward is granted by the operator of the system 1 to a user who has provided the computing power of the computing device 105 for the grid computing process. Examples of the reward granted to a user include points that can be used in the system 1, virtual currency, and product discount benefits. For example, the control unit 505 of the management server 50 performs a process for granting a reward to a user who has provided the computing power of the computing device 105 for the grid computing process. Examples of the process for granting a reward include a process for registering in the user table D51 a "user ID" set for the user and "points" (or virtual currency) that can be used in the system 1, and a process for transmitting information indicating a product discount benefit to the user terminal 20 owned by the user. Note that the information indicating the reward may be registered for each job in the job table D54.

[0142] Furthermore, a reward may be given by the client to a user who has provided the computing power of the computing device 105 for grid computing processing. For example, the control unit 305 of the client server 30 may execute processing for giving a reward to a user who has provided the computing power of the computing device 105 for grid computing processing.

[0143] [Job progress check] In this example, when the control unit 505 of the management server 50 receives a request from the client server 30 of the client that has requested the job to confirm the progress of the job processing, the control unit 505 responds to the request by transmitting image data of a confirmation screen for confirming the progress of the job processing to the client server 30. The client server 30 reproduces an image of the confirmation screen from the image data, and causes the output unit 302 (display unit) to output (display) the image.

[0144] As shown in Figure 14, the confirmation screen has a job name display field R201 that displays the name of the job, a processing progress display field R202 that displays the processing progress of the job, a calculation start date and time display field R203 that indicates the date and time when processing of the job starts, a calculation end date and time display field R204 that indicates the date and time when processing of the job ends, and a participating user display field R205 that indicates users who will provide the computing power of the computing device 105 for grid computing processing for the job.

[0145] Although the embodiments of the present invention have been described above, the specific configurations and means of the present invention can be modified and improved as desired within the scope of the technical ideas of the inventions set forth in the claims. Such modifications will be described below.

[0146] First, the problems that the invention aims to solve and the effects of the invention are not limited to those described above, and the present invention may solve problems that are not described above or achieve effects that are not described above, or may solve only some of the problems that are described or achieve only some of the effects that are described.

[0147] In the job allocation process of the above-described embodiment, if there is a computing device 105 that cannot be allocated to job data because its computational cost is relatively high, the control unit 505 may send information to the computing device 105 that was not allocated to the job data recommending that it consider switching its electricity contract to reduce charging fees.

[0148] [Action and effect] Finally, the effects of the management server 50 according to this embodiment and the modified example of this embodiment will be described.

[0149] According to this embodiment, the control unit 505 of the management server 50 calculates the amount of power consumption per unit calculation amount of each of the calculation devices 105, calculates the fee for the electricity used by each of the calculation devices 105 to calculate the job data D1 based on the amount of power consumption per unit calculation amount, selects one or more calculation devices 105 in order of lowest calculated fee, assigns them to the job data D1, and executes the grid computing process. This makes it possible to execute the grid computing process using calculation devices 105 whose fee for the electricity consumed when executing calculations is relatively low, thereby reducing power consumption when executing grid computing calculations and electricity fees.

[0150] Furthermore, according to this embodiment, when the electricity rate varies depending on the time of day, such as when the rate differs between daytime electricity and nighttime electricity, the control unit 505 can appropriately select the arithmetic device 105 that charges the lowest price for electricity used for calculation during the time period in which calculations of the job data D1 are performed. This makes it possible to more effectively reduce electricity charges when performing grid computing calculations.

[0151] Furthermore, according to this embodiment, when selecting a calculation device 105 to be assigned to job data D1, the control unit 505 takes into consideration the amount of calculation required to calculate job data D1 and the amount of calculation of each calculation device 105, thereby ensuring that the calculation of job data D1 is executed reliably while reducing the cost of electricity used to calculate job data D1. [Explanation of symbols]

[0152] 1 System 10 vehicles 105 Arithmetic equipment 106 Battery 20 User terminal 30 Client Server 40 Facility Server 50 Management Server 501 Input section 502 Output section 503 Communications Department 504 Storage section 505 Control Unit 60 Charging equipment D1 Job data D2 Calculation result data D5 Usage history information D6 Charging cost information D7 performance information D55 Resource Table

Claims

1. A management device that manages grid computing processing in which job data provided from a client server is processed by computing devices mounted on a plurality of vehicles, A memory unit; a control unit, the storage unit stores performance information including information indicating power consumption when each of the arithmetic devices executes calculations and information indicating an amount of calculation that each of the arithmetic devices can perform per unit time, and charging cost information including information indicating an average charging fee for a battery of a vehicle in which each of the arithmetic devices is installed; The control unit a job reception process for receiving the job data from the client server; a job allocation process that calculates the amount of power consumed per unit calculation amount of each of the arithmetic devices based on the performance information, calculates a fee for the power used by each of the arithmetic devices to calculate the job data based on the amount of power consumed per unit calculation amount and the charging cost information, selects one or more of the arithmetic devices in order of lowest calculated fee, and allocates the selected arithmetic devices to the job data; the grid computing process distributing job data to each of the arithmetic devices assigned to the job data, receiving calculation result data of the job data from each of the arithmetic devices, and transmitting the received calculation result data to the client server; configured to run Management device.

2. the storage unit stores a calculation amount that each of the calculation devices can calculate in grid computing processing; The control unit In the job reception process, a calculation amount required for calculating the job data is received; In the job allocation process, one or more of the arithmetic units are selected so that the sum of the amounts of calculation of the selected arithmetic units is equal to or greater than the amount of calculation of the job data. The management device according to claim 1 .

3. A management method for managing, by a computer, grid computing processing in which job data provided from a client server is processed by computing devices mounted on a plurality of vehicles, the method comprising: a storage step of storing performance information including information indicating the power consumption when each of the arithmetic devices executes calculations and information indicating the amount of calculation that each of the arithmetic devices can perform per unit time, and charging cost information including information indicating an average charging fee for the battery of a vehicle in which each of the arithmetic devices is installed; a job receiving step of receiving the job data from the client server; a job allocation step of calculating the amount of power consumed per unit calculation amount of each of the arithmetic devices based on the performance information, calculating a fee for the power used by each of the arithmetic devices to calculate the job data based on the amount of power consumed per unit calculation amount and the charging cost information, selecting one or more of the arithmetic devices in order of lowest calculated fee, and allocating the selected arithmetic devices to the job data; a grid computing step of distributing the job data to each of the computing devices assigned to the job data, receiving calculation result data of the job data from each of the computing devices, and transmitting the received calculation result data to the client server; A management method having the following.

Citation Information

Patent Citations

  • Multiple computer operation system

    JP2005250823A

  • Data centers task mapping

    JP2010211787A

  • Task execution by idle resources in grid computing system

    JP2015011716A

  • Management server and program

    JP2020160661A