Hybrid virtual GPU co-scheduling
AssigneeIntel Corporation
InventorsYan Zhao, Zhi Wang, Weinan Li
Life of this patent
Estimating the term…
Abstract
An embodiment of a semiconductor package apparatus may include technology to manage one or more virtual graphic processor units, and co-schedule the one or more virtual graphic processor units based on both general processor instructions and graphics processor instructions. Other embodiments are disclosed and claimed.
Claims21
An electronic processing system, comprising:
- a general processor;
- a graphics processor;
- memory communicatively coupled to the general processor and the graphics processor;
- and
- logic communicatively coupled to the general processor and the graphics processor to:
- manage one or more virtual graphic processor units,
- map schedule information into a graphics memory space, wherein the schedule information includes schedule account information,
- co-schedule the one or more virtual graphic processor units based on both general processor instructions and graphics processor instructions,
- co-schedule the one or more virtual graphic processor units based on the graphics processor instructions when a graphics processor schedule stub inserted at an end of a virtual graphics processor workload is reached, and
- update the schedule account information in the graphics memory space based on one or more of graphics memory space access instructions and graphics processor pipeline instructions, wherein the schedule account information is associated with scheduling policies implemented by graphics processor commands.
A semiconductor package apparatus, comprising:
- one or more substrates;
- and
- logic coupled to the one or more substrates, wherein the logic is at least partly implemented in one or more of configurable logic and fixed-functionality hardware logic, the logic coupled to the one or more substrates to:
- manage one or more virtual graphic processor units,
- map schedule information into a graphics memory space, wherein the schedule information includes schedule account information,
- co-schedule the one or more virtual graphic processor units based on both general processor instructions and graphics processor instructions,
- co-schedule the one or more virtual graphic processor units based on the graphics processor instructions when a graphics processor schedule stub inserted at an end of a virtual graphics processor workload is reached and
- update the schedule account information in the graphics memory space based on one or more of graphics memory space access instructions and graphics processor pipeline instructions, wherein the schedule account information is associated with scheduling policies implemented by graphics processor commands.
A method of co-scheduling a virtual graphics processor, comprising:
- managing one or more virtual graphic processor units;
- mapping schedule information into a graphics memory space, wherein the schedule information includes schedule account information;
- co-scheduling the one or more virtual graphic processor units based on both general processor instructions and graphics processor instructions;
- co-scheduling the one or more virtual graphic processor units based on the graphics processor instructions when a graphics processor schedule stub inserted at an end of a virtual graphics processor workload is reached;
- and
- updating the schedule account information in the graphics memory space based on one or more of graphics memory space access instructions and graphics processor pipeline instructions, wherein the schedule account information is associated with scheduling policies implemented by graphics processor commands.
At least one non-transitory computer readable storage medium, comprising a set of instructions, which when executed by a computing device, cause the computing device to:
- manage one or more virtual graphic processor units;
- map schedule information into a graphics memory space, wherein the schedule information includes schedule account information;
- co-schedule the one or more virtual graphic processor units based on both general processor instructions and graphics processor instructions;
- co-schedule the one or more virtual graphic processor units based on the graphics processor instructions when a graphics processor schedule stub inserted at an end of a virtual graphics processor workload is reached;
- and
- update the schedule account information in the graphics memory space based on one or more of graphics memory space access instructions and graphics processor pipeline instructions, wherein the schedule account information is associated with scheduling policies implemented by graphics processor commands.
Dependencies are inferred from the claim text.