1. A method of implementing data flow management on a computing device, comprising: identifying a dependency between a first iteration of a first operation assigned for execution by a first heterogeneous processing device and a first iteration of a second operation assigned for execution by a second heterogeneous processing device; mapping a path of iteration executions by the first heterogeneous processing device and the second heterogeneous processing device; initializing a buffer partition of a first memory of the first heterogeneous processing device for an output of execution of the first iteration of the first operation by the first heterogeneous processing device on which the first iteration of the second operation assigned for execution by the second heterogeneous processing device depends; identifying a memory management operation for transmitting the output by the first heterogeneous processing device from the buffer partition as an input to the second heterogeneous processing device; and allocating a second memory for storing data for an iteration executed by a third heterogeneous processing device based on a lowest number of memory management operations between the allocated second memory and the third heterogeneous processing device.