主权项 |
1. A non-transitory memory medium comprising program instructions executable to cause one or more processors to perform operations comprising:
deploying an application to a target device for execution, wherein at least a first portion of the application executes in a graphics processing unit (GPU) of the target device, and at least a second portion of the application executes in a central processing unit (CPU) of the target device; receiving an initial command stream comprising commands to be executed by the GPU during the execution of the application; generating one or more modified command streams from the initial command stream; deploying the one or more modified command streams to the target device for execution, the execution generating performance information for one or more graphics commands in the one or more modified command streams, the performance information including CPU load information and GPU load information; analyzing a performance of the one or more modified command streams, wherein analyzing the performance comprises:
determining, using the CPU load information and GPU load information, that a graphics command of the one or more graphics commands for executing on the GPU incurred a CPU cost, the CPU cost being caused by converting, by the CPU, data being provided by the graphic command from an original format that is not accepted by the GPU to a format that is acceptable by the GPU; anddetermining that, at least in part due to the CPU cost, the CPU load limited the performance of the one or more modified command streams; and providing a suggested modification to the application responsive to the analysis, wherein the suggested modification simplifies the graphic command to improve performance of the application. |