A computer program product for direct injection of data to be transferred in a hybrid computing environment, the hybrid computing environment comprising a host computer having a host computer architecture, a plurality of accelerators having an accelerator architecture, the accelerator architecture optimized, with respect to the host computer architecture, for speed of execution of a particular class of computing functions, the host computer and the accelerators adapted to one another for data communications by a system level message passing module, each accelerator further comprising a Power Processing Element (‘PPE’) and a plurality of Synergistic Processing Elements (‘SPEs’), the computer program product disposed in a computer readable storage medium, the computer program product comprising computer program instructions capable of:
- reserving, by each SPE of an accelerator, a slot in a shared memory region accessible by the host computer;
- loading, by each SPE from local memory of the accelerator into local memory of the SPE, a portion of data to be transferred to the host computer;
- executing, by each SPE in parallel, a data processing operation on the portion of the data loaded in local memory of each SPE;
- and
- writing, by each SPE, the processed data to the SPE's assigned slot in the shared memory region.