1. A system for processing data within multiple application programming interface (API) contexts, the system comprising: a system memory; a first API; a first software driver configured to: receive a first set of commands from an application via the first API, generate a first API context associated with the first API, generate a first push buffer of commands based on the first set of commands, wherein one or more commands in the first push buffer of commands and a first set of data are processed within the first API context to produce intermediate data, and generate a transfer command included in the first push buffer of commands; a second API that is unrelated to the first API; and a second software driver configured to: receive a second set of commands from the application via the second API, generate a second API context associated with the second API, and generate a second push buffer of commands based on the second set of commands, wherein one or more commands in the second push buffer of commands and the intermediate data are processed within the second API context to produce result data, wherein the transfer command, when processed within the first API context, causes the transfer of the intermediate data from an intermediate storage location for the first API context to an intermediate storage location for the second API context, each of the intermediate storage locations being part of a frame buffer memory that is separate from the system memory.