CPC G06F 9/5077 (2013.01) [G06F 9/45558 (2013.01); G06F 9/5027 (2013.01); G06F 2009/4557 (2013.01)] | 12 Claims |
1. A data processing system, comprising:
a first reconfigurable processor operatively coupled to a first host processor running on a first processing node;
a second reconfigurable processor operatively coupled to a second host processor on a second processing node;
a first Network Interface Controller (NIC) operatively coupled to the first processing node, the first NIC having a first plurality of buffers;
a second NIC operatively coupled to the second processing node, the second NIC having a second plurality of buffers; and
runtime logic configured to execute configuration files that define applications and application data for the applications using the first reconfigurable processor and the second reconfigurable processor, the execution including:
the first reconfigurable processor configured to push input data for the applications to one or more buffers in the first plurality of buffers;
the first host processor configured to cause the first NIC to stream the input data to one or more buffers in the second plurality of buffers from the first plurality of buffers; and
the second host processor configured to cause the second NIC to stream the input data to the second reconfigurable processor from the buffers in the second plurality of buffers;
wherein the second host processor uses one or more Remote Direct Memory Access (RDMA) commands to update tail pointers of the buffers in the second plurality of buffers after the input data is streamed to the buffers in the second plurality of buffers; and
wherein the second reconfigurable processor is configured to pull the input data from the buffers in the second plurality of buffers in response to the updated tail pointers.
|