Clusters of computing devices including interconnected computer nodes are sometimes employed to process high-volume data tasks. A computing cluster is a set of computing devices, e.g., configured as server racks comprising computing device “sleds” occupying one or more enclosures, or a computing network comprising multiple computing devices. Various data communications technologies have been deployed to enable the sleds to exchange data, e.g., Ethernet, Fiberchannel, etc. However, these technologies generally exchange data more slowly than processors are able to process data. The computing cluster has an advantage of surviving failures of individual computer, disk, network, or other subsystems. Increasing parallel processing and networking throughput can be useful to improve cluster performance. Different techniques to reduce interconnection overhead and latency have been tried on both software and hardware levels, but such techniques are limited by conventional system architectures of data pathways.
The figures depict various embodiments of the disclosed technology for purposes of illustration only. One skilled in the art will readily recognize from the following discussion that alternative embodiments may be employed.