Batching resource requests in a portable computing device
AssigneeQUALCOMM Incorporated
InventorsNorman S. Gargash, Vinod Vijayarajan
Life of this patent
Estimating the term…
Abstract
In a portable computing device having a node-based resource architecture, resource requests are batched or otherwise transactionized to help minimize inter-processing entity messaging or other messaging or provide other benefits. In a resource graph defining the architecture, each node or resource of the graph represents an encapsulation of functionality of one or more resources controlled by a processor or other processing entity, each edge represents a client request, and adjacent nodes of the graph represent resource dependencies. A single transaction of resource requests may be provided against two or more of the resources.
Claims44
A method for batching resource requests in a portable computing device having a plurality of resources, the method comprising:
- instantiating a plurality of nodes, each node having at least one of the plurality of resources, the plurality of resources defined by a directed acyclic graph, wherein each node of the directed acyclic graph represents an encapsulation of functionality of one or more of the plurality of resources, each edge of the directed acyclic graph represents a client request, and adjacent nodes of the directed acyclic graph represent resource dependencies;
- and
- providing a transaction of resource requests indicating two or more resources of the plurality of resources defined by the directed acyclic graph.
A computer system for batching resource requests in a portable computing device having a plurality of resources, the computer system comprising:
- a processing entity operable for:
- instantiating a plurality of nodes, each node having at least one of the plurality of resources, the plurality of resources defined by a directed acyclic graph, wherein each node of the directed acyclic graph represents an encapsulation of functionality of one or more of the plurality of resources, each edge of the directed acyclic graph represents a client request, and adjacent nodes of the directed acyclic graph represent resource dependencies;
- and
- providing a transaction of resource requests indicating two or more resources of the plurality of resources defined by the directed acyclic graph.
A computer system for batching resource requests in a portable computing device having a plurality of resources, the computer system comprising:
- means for instantiating a plurality of nodes, each node having at least one of the plurality of resources, the plurality of resources defined by a directed acyclic graph, wherein each node of the directed acyclic graph represents an encapsulation of functionality of one or more of the plurality of resources, each edge of the directed acyclic graph represents a client request, and adjacent nodes of the directed acyclic graph represent resource dependencies;
- and
- means for providing a transaction of resource requests indicating two or more resources of the plurality of resources defined by the directed acyclic graph.
A computer program product comprising a computer usable medium having a computer readable program code embodied therein, said computer readable program code adapted to be executed to implement a method for batching resource requests in a portable computing device having a plurality of resources, said method comprising:
- instantiating a plurality of nodes, each node having at least one of the plurality of resources, the plurality of resources defined by a directed acyclic graph, wherein each node of the directed acyclic graph represents an encapsulation of functionality of one or more of the plurality of resources, each edge of the directed acyclic graph represents a client request, and adjacent nodes of the directed acyclic graph represent resource dependencies;
- and
- providing a transaction of resource requests indicating two or more resources of the plurality of resources defined by the directed acyclic graph.
A method for batching resource requests in a portable computing device having a plurality of resources, the method comprising:
- instantiating a plurality of nodes, each node having at least one of the plurality of resources, the plurality of resources defined by a directed acyclic graph, wherein each node of the directed acyclic graph represents an encapsulation of functionality of one or more of the plurality of resources, each edge of the directed acyclic graph represents a client request, and adjacent nodes of the directed acyclic graph represent resource dependencies;
- receiving a resource request indicating a resource defined by the directed acyclic graph;
- determining if the resource request is associated with a transaction;
- if the resource request is not associated with a transaction, performing the resource request on the indicated resource;
- and
- if the resource request is associated with a transaction, adding information associated with the resource requests to a queue instead of performing the resource request on the indicated resource.
A computer system for batching resource requests in a portable computing device having a plurality of resources, the computer system comprising:
- a processing entity operable for:
- instantiating a plurality of nodes, each node having at least one of the plurality of resources, the plurality of resources defined by a directed acyclic graph, wherein each node of the directed acyclic graph represents an encapsulation of functionality of one or more of the plurality of resources, each edge of the directed acyclic graph represents a client request, and adjacent nodes of the directed acyclic graph represent resource dependencies;
- receiving a resource request indicating a resource defined by the directed acyclic graph;
- determining if the resource request is associated with a transaction;
- if the resource request is not associated with a transaction, performing the resource request on the indicated resource;
- and
- if the resource request is associated with a transaction, adding information associated with the resource requests to a queue instead of performing the resource request on the indicated resource.
A computer system for batching resource requests in a portable computing device having a plurality of resources, the computer system comprising:
- means for instantiating a plurality of nodes, each node having at least one of the plurality of resources, the plurality of resources defined by a directed acyclic graph, wherein each node of the directed acyclic graph represents an encapsulation of functionality of one or more of the plurality of resources, each edge of the directed acyclic graph represents a client request, and adjacent nodes of the directed acyclic graph represent resource dependencies;
- means for receiving a resource request indicating a resource defined by the directed acyclic graph;
- means for determining if the resource request is associated with a transaction;
- means for performing the resource request on the indicated resource if the resource request is not associated with a transaction;
- and
- means for adding information associated with the resource requests to a queue instead of performing the resource request on the indicated resource if the resource request is associated with a transaction.
A computer program product comprising a computer usable medium having a computer readable program code embodied therein, said computer readable program code adapted to be executed to implement a method for batching resource requests in a portable computing device having a plurality of resources, said method comprising:
- instantiating a plurality of nodes, each node having at least one of the plurality of resources, the plurality of resources defined by a directed acyclic graph, wherein each node of the directed acyclic graph represents an encapsulation of functionality of one or more of the plurality of resources, each edge of the directed acyclic graph represents a client request, and adjacent nodes of the directed acyclic graph represent resource dependencies;
- receiving a resource request indicating a resource defined by the directed acyclic graph;
- determining if the resource request is associated with a transaction;
- if the resource request is not associated with a transaction, performing the resource request on the indicated resource;
- and
- if the resource request is associated with a transaction, adding information associated with the resource requests to a queue instead of performing the resource request on the indicated resource.
Dependencies are inferred from the claim text.