1460723872-f160b949-9812-409b-9985-7a808e13403d

1. A computer-implemented optimization system having computer readable media that store executable instructions executed by a processor, comprising:
a cloud application that comprises client components of a client device and server components of a server configured to process workload;
a request component configured to receive a request from the cloud application to process portions of the workload via the client components and the server components, the request includes client resource information of available client resources to process the workload;
an optimization component that models dynamic application partitioning between the client device and the server by obtaining current values of client-specific parameters of the client resource information and computing an optimal dynamic partitioning of the client and server components to process the workload between the client device and the server based on the client-specific parameters of the client resource information; and
a microprocessor that executes computer-executable instructions associated with at least one of the request component or the optimization component.
2. The system of claim 1, wherein the optimal partitioning is based on at least one of energy consumption of the client device, resource footprint of the client device, data dependencies, network connectivity, or service level agreement.
3. The system of claim 1, wherein the optimal partitioning is performed on a per-request basis.
4. The system of claim 1, wherein the optimization component sends a response to the cloud application that defines which client components to run locally against the workload.
5. The system of claim 1, wherein the cloud application is a client application modeled as a directed data flow graph of vertices as processing modules and edges as communication links, the graph having associated costs where each vertex has an associated computation cost, storage cost, and memory footprint cost, and each edge has an associated bandwidth capacity cost and object size cost.
6. The system of claim 5, wherein the costs are measured offline using profiling.
7. The system of claim 5, wherein the costs are learned online during execution of the client application and the server application.
8. The system of claim 1, wherein the optimal partitioning is based on at least one of computation and storage costs of components running on the client device, memory footprint to run components on the client device, bandwidth needed based on the partitioning, data dependencies, power usage by the client device, end-to-end latency as a function of compute time and transmission latency, conservation of minimum battery life of client, or datacenter utilization where the server is sited.
9. The system of claim 1, wherein the optimization component pushes one or more components to the client device to run against the workload.
10. A computer-implemented optimization system having computer readable media that store executable instructions executed by a processor, comprising:
a request component that receives a request from a cloud application to process workload, the cloud application comprises client components of a client and server components of a server for processing the workload;
an optimization component that models dynamic partitioning of the cloud application by obtaining current values of client-specific parameters of the client components and the server components and computing an optimal dynamic partitioning of the client components and server components to process the workload between the client and the server based on the client-specific parameters, client resources and server resources, and sends a response to the client that defines which client components to run locally against the workload; and
a microprocessor that executes computer-executable instructions associated with at least one of the request component or the optimization component.
11. The system of claim 10, wherein the optimal partitioning is based on at least one of energy consumption of the client, resource footprint of the client, network connectivity, security and privacy data, computation concerns, or service level agreement.
12. The system of claim 10, wherein the optimal partitioning is based on speculative execution of server-side components and buffering externally-visible output at the client until output of server-side computation is received.
13. The system of claim 10, wherein the optimal partitioning is based on a middle system between the client and a datacenter.
14. The system of claim 10, where the optimal partitioning is based on a software clone of a physical client device may be hosted in the client on a powerful server which may perform computations and storage on behalf of or in collaboration with the physical client device and may communicate with the client device as needed.
15. The system of claim 10, where the optimal partitioning considers trade-offs between communication latency, precision, and battery consumption.
16. The system of claim 10, wherein the optimal partitioning is based on at least one of computation costs of components running on the client device, memory footprint to run components on the client device, bandwidth needed based on the partitioning, power usage by the client device, end-to-end latency as a function of compute time and transmission latency, data dependencies, conservation of minimum battery life of the client, or datacenter utilization where the server is sited.
17. The system of claim 10, wherein the cloud application is modeled to include computation and storage costs associated with processor resources of the client, a computation cost associated with processor resources of the server, a memory footprint cost incurred during execution, a bandwidth capacity cost between the client and the server, and an object size cost of data transferred between the client and the server during computations.
18. The system of claim 17, wherein the costs are measured offline using profiling or learned online during execution of the client and the server.
19. A computer-implemented optimization method performed by a computer system executing machine-readable instructions, the method, comprising acts of:
receiving from a cloud application a request for processing workload via a client device and a server;
receiving client resource availability information of the client device and server resource availability information of the server to process the workload;
modeling dynamic application partitioning of the cloud application between the client device and the server by obtaining current values of parameters of the respective client and server resource availability information and computing an optimal dynamic partitioning of the cloud application;
partitioning the computation of components of the cloud application that include server components of the server and client components of the client device between the client device and the server based on the current values of the parameters of the respective client and server resource availability information; and
processing the workload using the components as partitioned.
20. The method of claim 19, further comprising repeating receiving, partitioning, and processing based on a new request received from the client device for processing a new workload.
21. The method of claim 19, further comprising sending a response to the client device that defines which of the client components to run locally on the workload.
22. The method of claim 19, further comprising partitioning the components to minimize a utility function that considers computational latency at the client device, communication latency between the client device and the server, and energy consumed at the client device in computing and communicating data for the client application.
23. The method of claim 19, further comprising partitioning the components based on memory footprint associated with the client components and the server components.
24. The method of claim 19, further comprising caching a database of at least one of application state, intermediate results, features, or objects of interest on the client device and on a datacenter side.
25. The method of claim 19, further comprising computing characteristics of one or more middle components as part of receiving, partitioning, and processing.
26. The method of claim 19, further comprising partitioning the components based on failures of execution of different components and an operating environment.
27. The method of claim 19, further comprising partitioning the components based on a utility computing model of cloud infrastructures where utilization of server resources in a datacenter incurs monetary costs which are dynamic.
28. The method of claim 19, further comprising partitioning the components based on developer or user preferences on how and where to run the components on a client side and a server side, which change during application execution resulting in components migrating from client to server, or server to client, and between different server nodes.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method for performing occlusion queries, comprising steps of:
(a) a graphics processing unit (GPU) using a first depth buffer of a first frame to thereby predict a second depth buffer of a second frame; and
(b) the GPU performing occlusion queries for the second frame by using the predicted second depth buffer,
wherein the first frame is a frame predating the second frame;
wherein, at the step of (a), the GPU creates the predicted second depth buffer based on warping of the first depth buffer,
wherein, at the step of (a), the warping is a backward warping and the GPU performs the backward warping by using a hierarchical data structure of the first frame.
2. The method of claim 1, further comprising the step of: (c) transmitting a result of the occlusion queries to a CPU.
3. The method of claim 1, wherein, at the step of (b), the GPU performs the occlusion queries by using the predicted second depth buffer as an occluder map.
4. The method of claim 1, wherein, at the step of (b), the occlusion queries are performed without classifying one or more objects of the second frame into occluders and occludees.
5. The method of claim 1, wherein, at the step of (a), the GPU performs the warping of the first depth buffer by using a motion in at least either screen space or object space of the first frame or the second frame.
6. The method of claim 1, wherein, at the step of (a), the GPU fills a hole generated at the predicted second depth buffer after the warping to the maximum depth.
7. The method of claim 1, wherein the second frame includes one or more objects and, at the step of (b), the GPU processes the occlusion queries for the one or more objects in parallel.
8. One or more non-transitory computer-readable recording media having stored thereon a computer program that, when executed by one or more processors, causes the one or more processors to perform acts including:
(a) a graphics processing unit (GPU) using a first depth buffer of a first frame to thereby predict a second depth buffer of a second frame; and
(b) the GPU performing occlusion queries for the second frame by using the predicted second depth buffer,
wherein the first frame is a frame predating the second frame;
wherein, at the step of (a), the GPU creates the predicted second depth buffer based on warping of the first depth buffer,
wherein, at the step of (a), the warping is a backward warping and the GPU performs the backward warping by using a hierarchical data structure of the first frame.
9. A GPU, comprising:
a depth buffer rendering unit for using a first depth buffer of a first frame to thereby predict a second buffer of a second frame; and
an occlusion query unit for performing occlusion queries for the second frame by using the predicted second depth buffer;
a depth buffer warping unit for creating the predicted second depth buffer based on warping of the first depth buffer; and
wherein the warping is a backward warping, and the depth buffer warping unit performs the backward warping by using a hierarchical data structure of the first frame;
wherein the first frame is a frame predating the second frame in time.
10. The GPU of claim 9, further comprising: a communication unit for transmitting a result of the occlusion queries to a CPU.
11. The GPU of claim 9, wherein the occlusion query unit performs the occlusion queries by using the predicted second depth buffer as an occluder map.
12. The GPU of claim 9, wherein the occlusion queries are performed without classifying one or more objects of the second frame into occluders and occludees.
13. The GPU of claim 9, wherein the depth buffer warping unit performs the warping of the first depth buffer by using a motion in at least either on screen space or on object space of the first frame of the second frame.
14. The GPU of claim 9, further comprising: a hole filling unit for filling a hole generated at the predicted second depth buffer after the warping to the maximum depth.
15. The GPU of claim 9, wherein the second frame includes one or more objects, and the occlusion query unit processes the occlusion queries for the one or more objects in parallel.

1460723865-c4bd84c3-edac-4bdf-8ef7-015d43c8fa4d

1. A test order optimization method, comprising:
identifying a pass probability for each of a plurality of tests;
identifying a resource requirement for each of the tests;
for each of the tests, generating a pass-weighted resource requirement factor in accord with the test’s pass probability and resource requirement; and
ordering the tests to be executed in accord with their pass-weighted resource requirement factors.
2. The method of claim 1, wherein identifying pass probabilities for the tests comprises, for at least one test, estimating a pass probability of the test before the test is executed.
3. The method of claim 1, wherein identifying pass probabilities for the tests comprises, for at least one test, determining a pass probability of the test from prior executions of the test.
4. The method of claim 1, wherein identifying resource requirements for the tests comprises, for at least one test, identifying a time requirement necessary to execute the test.
5. The method of claim 1, wherein generating pass-weighted resource requirement factors for the tests comprises, for at least one test, multiplying the test’s pass probability and resource requirement.
6. The method of claim 1, wherein generating pass-weighted resource requirement factors for the tests comprises, for at least one test, adding the test’s pass probability and resource requirement.
7. The method of claim 1, wherein, for at least one test, the test’s pass-weighted resource requirement factor is further generated in accord with an adjustment factor.
8. The method of claim 7, wherein the adjustment factor for a test reflects the importance of the test.
9. The method of claim 1, wherein different resource requirements are identified for different tests, and wherein, for at least one test, the test’s pass-weighted resource requirement factor is further generated in accord with an adjustment factor that equates its resource requirement with a different resource requirement.
10. The method of claim 1, wherein generating pass-weighted resource requirement factors for the tests comprises, for at least one test, generating its pass-weighted resource requirement in accord with a non-linear formula.
11. The method of claim 1, wherein ordering the tests comprises placing tests with lower pass-weighted resource requirement factors for execution before tests with higher pass-weighted resource requirement factors.
12. The method of claim 1, further comprising, periodically,
updating at least the pass probabilities for the tests;
re-generating the pass-weighted resource requirement factors for the tests; and
re-ordering the tests to be executed in accord with their re-generated pass-weighted resource requirement factors.
13. The method of claim 1, wherein the tests are circuit tests.
14. A number of machine-readable media having stored thereon sequences of instructions that, when executed by a machine, cause the machine to perform the actions of:
identifying a pass probability for each of a plurality of tests;
identifying a resource requirement for each of the tests;
for each of the tests, generating a pass-weighted resource requirement factor in accord with the test’s pass probability and resource requirement; and
ordering the tests to be executed in accord with their pass-weighted resource requirement factors.
15. The machine-readable media of claim 14, wherein the instructions that cause the machine to perform the action of identifying resource requirements for the tests cause the machine to, for at least one test, identify a time requirement necessary to execute the test.
16. The machine-readable media of claim 14, wherein the instructions that cause the machine to perform the action of generating pass-weighted resource requirement factors for the tests cause the machine to, for at least one test, multiply the test’s pass probability and resource requirement.
17. The machine-readable media of claim 14, wherein the instructions that cause the machine to perform the action of generating pass-weighted resource requirement factors for the tests cause the machine to, for at least one test, further generate the test’s pass-weighted resource requirement factor in accord with an adjustment factor.
18. The machine-readable media of claim 17, wherein the adjustment factor for a test reflects the importance of the test.
19. The machine-readable media of claim 14, wherein the instructions further cause the machine to, periodically,
update at least the pass probabilities for the tests;
re-generate the pass-weighted resource requirement factors for the tests; and
re-order the tests to be executed in accord with their re-generated pass-weighted resource requirement factors.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. Method for display of information, with a mobile ID transmitter and a cellular phone with a display, the method comprising:
using the mobile ID transmitter for activation of a security system of a vehicle, wherein the mobile ID transmitter comprises an electronic unit;
using the electronic unit for data communication with a vehicle-side device;
transmitting vehicle-side information data communication from the vehicle to the electronic unit, storing the vehicle-side information in a data memory;
communicating the electronic unit with the cellular phone via a communication connection; and
transmitting the vehicle-side information via the communication connection to the cellular phone and displaying on the display,
wherein the cellular phone transmits an information sequence to the mobile ID transmitter,
wherein the information sequence is transmitted from the mobile ID transmitter to a data processing system of the vehicle,
wherein that the mobile ID transmitter transmits a query sequence, in which the cellular phone receives the query sequence and sends a response sequence to make the communication connection, and wherein a transmission format for the vehicle-side information is transmitted in the response sequence.
2. Methods according to claim 1, wherein after sending the query sequence, the method further comprises: a number of types of cellular phone receiving the query sequence and sender response sequence, the mobile ID transmitter receiving the number of response sequences, the mobile ID transmitter selecting, by means of a priority list, a cellular phone, and the mobile ID transmitter transmitting to the selected cellular phone the vehicle-side information.
3. Method according to claim 1, wherein the cellular phone sends a query sequence, in which the mobile ID transmitter receives the query sequence and sends the response sequence.
4. Method according to claim 1, wherein a state of the vehicle is displayed on the display of the cellular phone, wherein the state comprises a mileage of the vehicle, a tank content, a maintenance interval, navigation data or a content of an error memory or similar and displayed on the display, wherein this information is forwarded to a wireless telecommunication network for further processing with the help of a cellular phone.
5. Method according to claim 1, wherein a variety of vehicle-side information is transmitted via the data communication to the electronic unit from a number of vehicle-side devices, and wherein the mobile ID transmitter transmits different vehicle-side information by means of the communication connection, to the cellular phone.
6. Method according to claim 1, wherein by triggering an activation element on the mobile ID transmitter, a query sequence is sent.
7. Method according to claim 1, wherein the cellular phone stores vehicle-side information andor processes said vehicle-side information, wherein the cellular phone compares the vehicle-side information with a reference value, comprising a reference interval, wherein the cellular phone displays a warning signal when vehicle-side information lies outside the reference interval.
8. Method according to claim 1, wherein the information sequence is processed in the electronic unit.
9. Method according to claim 8, wherein the information sequence executes processing of the vehicle-side information in the data processing system of the vehicle before transmission to the mobile ID transmitter.
10. A non-transitory computer program product for execution of the method according to claim 1, wherein the method steps are integrated in a program stored in the computer program product.
11. System for display of information, comprising:
a mobile ID transmitter, and
a cellular phone with a display,
wherein the mobile ID transmitter is used to activate a security system of a vehicle, the mobile ID transmitter has an electronic unit and said electronic unit is used for data communication with a vehicle-side device, vehicle-side information can be transmitted via data communication from the vehicle-side device to the electronic unit, and said vehicle-side information can be stored in a data memory, the electronic unit communicates with the cellular phone via a communication connection, and the vehicle-side information can be transmitted via the communication connection to the cellular phone and displayed on the display,
wherein the cellular phone transmits an information sequence to the mobile ID transmitter,
wherein the information sequence is transmitted from the mobile ID transmitter to a data processing system of the vehicle,
wherein that the mobile ID transmitter transmits a query sequence, in which the cellular phone receives the query sequence and sends a response sequence to make the communication connection, and wherein a transmission format for the vehicle-side information is transmitted in the response sequence.
12. System according to claim 11, wherein the cellular phone comprises a part of the following: a personal digital assistant with radio, a notebook with a radio unit, a personal computer with a radio unit, or a navigation system with radio unit.
13. System according to claim 11, wherein the mobile ID transmitter has a communication device, by means of which the mobile ID transmitter makes the communication connection to the cellular phone.
14. System according to claim 11, wherein the communication device is a transponder, and wherein the transponder also serves to activate a security system of the vehicle.
15. System according to claim 11, wherein the cellular phone has a communication element, in which the communication element serves to make the communication connection to the mobile ID transmitter, and the communication element makes a wireless communication connection with the communication device.
16. System according to claim 15, wherein the communication device or the communication element comprises at least one of:
Bluetooth, Infrared Data Association (IrDA), ZigBee, Near Field Communication, Wireless Local Area Network (WLAN; IEEE 802.11), WiMax, Wibree, FireWire (IEEE 1394), USB (Universal Serial Bus), HDMI (High Definition Multimedia Interface), Unilink, ATAATAPI (Advanced Technology Attachment with Packet Interface), IEEE 488, IEEE 1284, a standard according to IEEE 802, and capacitive data transmission.
17. System for the display of information according to claim 11, is configured to:
use the mobile ID transmitter for activation of the security system of the vehicle;
use the electronic unit for data communication with the vehicle-side device;
enable a transmitting of the vehicle-side information data communication from the vehicle to the electronic unit;
store the vehicle-side information in the data memory;
enable communications between the electronic unit and the cellular phone via the communication connection; and
enable a transmitting of the vehicle-side information via the communication connection to the cellular phone.
18. Mobile ID transmitter for a vehicle security system, comprising:
an electronic unit and a data memory, wherein the electronic unit is used for data communication with a vehicle-side device, the vehicle-side information can be transmitted via data communication from the vehicle-side device to the electronic unit, the vehicle-side information can be stored in the data memory, the electronic unit communicates with a cellular phone with display via a communication connection, and whereby the vehicle-side information can be transmitted via the communication connection to the cellular phone and displayed on the display,
wherein that the mobile ID transmitter transmits a query sequence, in which the cellular phone receives the query sequence and sends a response sequence to make the communication connection, and wherein a transmission format for the vehicle-side information is transmitted in the response sequence.