Patent ID: 8145749

Claim:
A method of data processing in a hybrid computing environment, the hybrid computing environment comprising: a host computer having a host computer architecture; an accelerator 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 accelerator adapted to one another for data communications by a system level message passing module; the host computer and the accelerator adapted to one another for data communications by two or more data communications fabrics of at least two different fabric types; the method comprising: monitoring, by the system level message passing module, data communications performance for a plurality of data communications modes between the host computer and the accelerator; receiving, by the system level message passing module from an application program on the host computer, a request to transmit data according to a data communications mode from the host computer to the accelerator; determining, by the system level message passing module, in dependence upon the monitored performance whether to transmit the data according to the requested data communications mode; and if the data is not to be transmitted according to the requested data communications mode: selecting, by the system level message passing module, in dependence upon the monitored performance another data communications mode for transmitting the data and transmitting the data by the system level message passing module according to the selected data communications mode; wherein selecting another data communications mode for transmitting the data further comprises selecting in dependence upon the monitored performance a data communications link through which to transmit the data.