A method for providing asymmetric virtualized graphics processing unit (vGPU) nodes in a child partition of a para-virtualized execution environment for a computing system that includes one or more processors, system memory and a physical graphics processing unit, the method comprising: an act of instantiating a render component within a root partition of the para-virtualized execution environment, the render component being configured to execute received GPU commands at the physical GPU; an act of instantiating a vGPU within a child partition, the vGPU being configured to virtualize the physical GPU, the vGPU including: a kernel-mode driver which includes a plurality of virtual nodes, each virtual node comprising a direct memory access engine that is distinct from every other DMA engine, and each DMA engine being configured to perform a different type of operation in parallel with one or more other types of operations performed by one or more other DMA engines; and a user-mode driver which is configured to schedule operations of different types for parallel execution on the DMA engines of the virtual nodes; an act of declaring the KMD as a multi-engine GPU; an act of establishing a plurality of DMA channels which are at least as great in number as the number of DMA engines of the virtual nodes, each DMA channel having a unique identifier used by the KMD and render component to prevent competition by the DMA engines of the virtual nodes when accessing a DMA channel to communicate GPU commands between the corresponding DMA engine of a virtual node and the render component; and an act of the UMD scheduling each of a plurality of different types of operations for execution on a different one of the DMA engines of the virtual nodes. an act of instantiating a render component within a root partition of the para-virtualized execution environment, the render component being configured to execute received GPU commands at the physical GPU; an act of instantiating a vGPU within a child partition, the vGPU being configured to virtualize the physical GPU, the vGPU including: a kernel-mode driver which includes a plurality of virtual nodes, each virtual node comprising a direct memory access engine that is distinct from every other DMA engine, and each DMA engine being configured to perform a different type of operation in parallel with one or more other types of operations performed by one or more other DMA engines; and a user-mode driver which is configured to schedule operations of different types for parallel execution on the DMA engines of the virtual nodes; an act of declaring the KMD as a multi-engine GPU; an act of establishing a plurality of DMA channels which are at least as great in number as the number of DMA engines of the virtual nodes, each DMA channel having a unique identifier used by the KMD and render component to prevent competition by the DMA engines of the virtual nodes when accessing a DMA channel to communicate GPU commands between the corresponding DMA engine of a virtual node and the render component; and an act of the UMD scheduling each of a plurality of different types of operations for execution on a different one of the DMA engines of the virtual nodes. a kernel-mode driver which includes a plurality of virtual nodes, each virtual node comprising a direct memory access engine that is distinct from every other DMA engine, and each DMA engine being configured to perform a different type of operation in parallel with one or more other types of operations performed by one or more other DMA engines; and a user-mode driver which is configured to schedule operations of different types for parallel execution on the DMA engines of the virtual nodes; an act of declaring the KMD as a multi-engine GPU; an act of establishing a plurality of DMA channels which are at least as great in number as the number of DMA engines of the virtual nodes, each DMA channel having a unique identifier used by the KMD and render component to prevent competition by the DMA engines of the virtual nodes when accessing a DMA channel to communicate GPU commands between the corresponding DMA engine of a virtual node and the render component; and an act of the UMD scheduling each of a plurality of different types of operations for execution on a different one of the DMA engines of the virtual nodes.