Does OpenCL have built-in support for parallelizing tasks across multiple heterogeneous systems across a network using MPI or some sort of message passing API like that? Or, should MPI simply be used atop an OpenCL implementation (ie. by the application programmer) to parallelize across a network (ie. OpenCL only supports one single heterogeneous system at a time)? I've looked through much of the OpenCL documentation, and I can't find anything about network support.

Thank you and regards,
David