1. A computerized method of managing a plurality of subbuffers associated with a parent buffer in a heterogeneous compute environment, the method comprising: allocating the parent buffer for a process, wherein the process uses a plurality of heterogeneous compute units, the plurality of heterogeneous compute units includes a first processing unit and a second processing unit, and the plurality of heterogeneous compute units is resident in a single device; for each subbuffer in the plurality of subbuffers, creating that subbuffer for one of the plurality of heterogeneous compute units from the parent buffer, wherein each of the plurality of subbuffers occupies a different memory region in the parent buffer that was allocated for the process, and storing subbuffer data in that subbuffer; for each subbuffer that corresponds to one of the plurality of heterogeneous compute units not associated with the parent buffer, managing updates to the subbuffer data in a private memory of a corresponding compute unit by tracking updates to the subbuffer data in the private memory for the corresponding compute unit, and sending the updates to that buffer; and for each subbuffer that corresponds to one of the plurality of heterogeneous compute units associated with the parent buffer, accessing the subbuffer data in the parent buffer.