1. A system, comprising:
a processor; and
a memory containing a program that, when executed by the processor, performs an operation for incorporating performance data into an executable file for an application, the operation comprising:
monitoring performance of the executable file for the application while the executable file is executing on a node;
determining the performance data of the application based on the monitored performance and one or more system characteristics of the node;
incorporating the performance data into the executable file for the application for subsequent retrieval from the executable file, further comprising:
storing the performance data in a plurality of global variables in a source code for the application; and
compiling the source code including the performance data stored in the plurality of global variables to create the executable file for the application, such that the performance data can subsequently be retrieved from the executable file;
deploying the executable file containing the incorporated performance data for the application to a first node for execution;
retrieving the performance data from the executable file for use in managing the execution of the executable file; and
performing a remedial action for the deployed application, upon determining that a potential workload overflow problem exists for the deployed application based on system information describing attributes of the first node and the retrieved performance data.
2. The system of claim 1, wherein the application is a processing element in a stream computing application, and the operation further comprising:
retrieving system information for each of a plurality of nodes, wherein the plurality of nodes comprises the node;
selecting one or the plurality of nodes to deploy the processing element based on the retrieved system information and the performance data incorporated into the executable file for the processing element; and
deploying the processing element for execution on the selected node.
3. The system of claim 2, wherein the processing element is deployed alongside a plurality of other processing elements, and the operation further comprising:
establishing an operator graph of the plurality of other processing elements and the deployed processing element, the operator graph defining at least one execution path and wherein at least one of the processing elements of the operator graph is configured to receive data from at least one upstream processing element and transmit data to at least one downstream processing element.
4. The system of claim 1, wherein the performance data includes at least one of: a processor type, a number of processors, an amount of memory, a type of memory, a type of storage, one or more network connectivity characteristics, and a measure of system workload.
5. The system of claim 1, the operation further comprising:
determining a number of instances of the application that should be created, based on system information for systems on which the instances of the application will be executed and further based on the performance data; and
creating the determined number of instances of the application on the systems, such that load can be balanced between the created instances of the application.
6. The system of claim 1, wherein performing a remedial action includes at least one of:
(i) spawning a second instance of the application on a second node and discarding the deployed executable file on the first node,
(ii) migrating the deployed executable file on the first node to a second node,
(iii) modifying an operator graph to reduce a workload of the deployed executable file, and
(iv) modifying one or more operations performed by the deployed executable file.
7. The system of claim 1, the operation further comprising:
generating a status notification for the deployed executable file, the status notification indicating a current amount of workload for the executable file and a maximum amount of workload for the executable file, based on current workload information for the first node, the system information describing the attributes of the first node and the performance data incorporated into the executable file.
8. A computer program product for incorporating performance data into an executable file for an application, comprising:
a non-transitory computer-readable medium having computer readable program code embodied therewith, the computer readable program code comprising:
computer readable program code to monitor performance of the executable file for the application while the executable file is executing on a node;
computer readable program code to determine the performance data of the application based on the monitored performance and one or more system characteristics of the node
computer readable program code to incorporate the performance data into the executable file for the application for subsequent retrieval from the executable file, further comprising:
storing the performance data in a plurality of global variables in a source code for the application; and
compiling the source code including the performance data stored in the plurality of global variables to create the executable file for the application, such that the performance data can subsequently be retrieved from the executable file;
computer readable program code to deploy the executable file containing the incorporated performance data for the application to a first node for execution;
computer readable program code to retrieve the performance data from the executable file for use in managing the execution of the executable file; and
computer readable program code to perform a remedial action for the deployed application, upon determining that a potential workload overflow problem exists for the deployed application based on system information describing attributes of the first node and the retrieved performance data.
9. The computer program product of claim 8, wherein the application is a processing element in a stream computing application, and the computer readable program code further comprising:
computer readable program code to retrieve system information for each of a plurality of nodes;
computer readable program code to select one of the plurality of nodes to deploy the processing element based on the retrieved system information and the performance data incorporated into the executable file of the processing element; and
computer readable program code to deploy the processing element for execution on the selected node of the plurality of nodes.
10. The computer program product of claim 9, wherein the processing element is deployed alongside a plurality of other processing elements, and the computer readable program code further comprising:
computer readable program code to establish an operator graph of the plurality of other processing elements and the deployed processing element, the operator graph defining at least one execution path and wherein at least one of the processing elements of the operator graph is configured to receive data from at least one upstream processing element and transmit data to at least one downstream processing element.
11. The computer program product of claim 8, wherein the performance data includes at least one of: a processor type, a number of processors, an amount of memory, a type of memory, a type of storage, one or more network connectivity characteristics, and a measure of system workload.
12. The computer program product of claim 8, the computer readable program code further comprising:
computer readable program code to determine a number of instances of the application that should be created, based on system information for systems on which the instances of the application will be executed and further based on the performance data; and
computer readable program code to create the determined number of instances of the application on the systems, such that load can be balanced between the created instances of the application.
13. The computer program product of claim 8, wherein performing the remedial action includes at least one of:
(i) spawning a second instance of the application on a second node and discarding the deployed executable file on the first node,
(ii) migrating the deployed executable file on the first node to a second node,
(iii) modifying an operator graph to reduce a workload of the deployed executable file, and
(iv) modifying one or more operations performed by the deployed executable file.
14. The computer program product of claim 8, the computer readable program code further comprising:
computer readable program code to generate a status notification for the deployed executable file, the status notification indicating a current amount of workload for the executable file and a maximum amount of workload for the executable file, based on current workload information for the first node, the system information describing the attributes of the first node and the performance data incorporated into the executable file.
The claims below are in addition to those above.
All refrences to claims which appear below refer to the numbering after this setence.
1. A power transmission control device included in a power transmission device in a contactless power transmission system that transmits power from the power transmission device to a power receiving device by electromagnetically coupling a primary coil to a secondary coil to supply the power to a load of the power receiving device, the power transmission control device comprising: a controller controlling the power transmission control device; a host interface communicating with a power transmission-side host; and a register section accessible from the power transmission-side host via the host interface, the controller shifting into a communication mode that executes communication between the power transmission-side host and a power receiving-side host, when the power transmission-side host writes, via the host interface, a communication request command that requests the communication between the hosts to the register section, as well as the controller transmitting the communication request command to the power receiving device, and wherein the register section including a command register in which a command issued by the power transmission-side host is written and a data register that buffers data; and the controller transmitting, to the power receiving device, an OUT transmission command that requests data transmission from the power transmission-side host to the power receiving-side host when the OUT transmission command is written in the command register; and then, the controller transmitting a data transmission command that directs the data transmission and data to the power receiving device when the data transmission command is written in the command register and the data is written in the data register.
2. The power transmission control device according to claim 1, the controller receiving a communication request by the communication request command after completion of an authentication processing between the power transmission device and the power receiving device and a start of normal power transmission.
3. The power transmission control device according to claim 1, the register section including a command register in which a command issued by the power transmission-side host is written and a data register that buffers data; and the controller transmitting, to the power receiving device, an OUT transmission command that requests data transmission from the power transmission-side host to the power receiving-side host when the OUT transmission command is written in the command register; and then, the controller transmitting a data transmission command that directs the data transmission and data to the power receiving device when the data transmission command is written in the command register and the data is written in the data register.
4. The power transmission control device according to claim 1, the controller setting at least one of a transmission condition for contactless power transmission and a communication condition between the power transmission device and the power receiving device to a condition for the communication mode that is different from a condition for normal power transmission, when the controller shifts into the communication mode.
5. The power transmission control device according to claim 4, the controller switching a driving frequency or a driving voltage of the primary coil to a driving frequency or a driving voltage of the coil for the communication mode, when shifting into the communication mode.
6. The power transmission control device according to claim 1, the register section including a status register having a bit that allows the power transmission-side host to confirm a power transmission state of contactless power transmission.
7. The power transmission control device according to claim 6, the load including a battery, and the status register having a bit that allows the power transmission-side host to confirm a charge state of the battery.
8. The power transmission control device according to claim 1, the register section including an interruption register having a bit that notifies reception of a command issued by the power receiving-side host to the power transmission-side host upon reception of the command.
9. The power transmission control device according to claim 8, the load including a battery, and the interruption register having a bit that notifies a start of charging of the battery to the power transmission-side host.
10. The power transmission control device according to claim 1, the controller shifting into the communication mode upon reception of an interruption command for a communication request issued by the power receiving-side host.
11. A power transmission device including the power transmission control device of claim 1 and a power transmission section that generates an alternating-current voltage to supply to the primary coil.
12. An electronic apparatus including the power transmission device of claim 11.
13. The power transmission control device according to claim 1, the controller issuing a normal power transmission start command after completion of the communication mode.
14. A power transmission control device included in a power transmission device in a contactless power transmission system that transmits power from the power transmission device to a power receiving device by electromagnetically coupling a primary coil to a secondary coil to supply the power to a load of the power receiving device, the power transmission control device comprising: a controller controlling the power transmission control device; a host interface communicating with a power transmission-side host; and a register section accessible from the power transmission-side host via the host interface, the controller setting at least one of a transmission condition for contactless power transmission and a communication condition between the power transmission device and the power receiving device to a condition for a communication mode that is different from a condition for normal power transmission, when shifting into the communication mode that executes communication between the power transmission-side host and the power receiving-side host, and wherein the register section including a command register in which a command issued by the power transmission-side host is written and a data register that buffers data; and the controller transmitting, to the power receiving device, an OUT transmission command that requests data transmission from the power transmission-side host to the power receiving-side host when the OUT transmission command is written in the command register; and then, the controller transmitting a data transmission command that directs the data transmission and data to the power receiving device when the data transmission command is written in the command register and the data is written in the data register.
15. The power transmission control device according to claim 14, the controller issuing a normal power transmission start command after completion of the communication mode.
16. A power receiving control device included in a power receiving device in a contactless power transmission system that transmits power from a power transmission device to the power receiving device by electromagnetically coupling a primary coil to a secondary coil to supply the power to a load of the power receiving device, the power receiving control device comprising: a controller controlling the power receiving control device; a host interface communicating with a power receiving-side host; and a register section accessible from the power receiving-side host via the host interface, the controller shifting into a communication mode that executes communication between a power transmission-side host and the power receiving-side host, when receiving a communication request command that requests the communication between the hosts from the power transmission device, and wherein the register section including a command register in which a command issued by the power receiving-side host is written, and the controller shifting into the communication mode when the power receiving-side host writes an interruption command for a communication request to the power transmission-side host in the command register.
17. The power receiving control device according to claim 16, the controller receiving a communication request by the communication request command after completion of an authentication processing between the power transmission device and the power receiving device and a start of normal power transmission.
18. The power receiving control device according to claim 16, the load including a battery, and the register section including a status register having a bit that allows the power receiving-side host to confirm a charge state of the battery.
19. The power receiving control device according to claim 16, the register section including an interruption register having a bit that notifies reception of a command issued by the power transmission-side host to the power receiving-side host upon reception of the command.
20. A power receiving device including the power receiving control device of claim 16 and a power receiving section that converts an induced voltage of the secondary coil to a direct-current voltage.
21. An electronic apparatus including the power receiving device of claim 20 and a load that receives power from the power receiving device.
22. The power receiving control device according to claim 16, the controller supplying the power to the load when receiving a normal power transmission start command after completion of the communication mode.