Euro-Par 2009 Parallel Processing

Volume 5704 of the series Lecture Notes in Computer Science pp 1065-1077

NIC-Assisted Cache-Efficient Receive Stack for Message Passing over Ethernet

  • Brice GoglinAffiliated withINRIA Bordeaux

* Final gross prices may vary according to local VAT.

Get Access


High-speed networking in clusters usually relies on advanced hardware features in the NICs, such as zero-copy. Open-MX is a high-performance message passing stack designed for regular Ethernet hardware without such capabilities.

We present the addition of multiqueue support in the Open-MX receive stack so that all incoming packets for the same process are treated on the same core. We then introduce the idea of binding the target end process near its dedicated receive queue. This model leads to a more cache-efficient receive stack for Open-MX. It also proves that very simple and stateless hardware features may have a significant impact on message passing performance over Ethernet.

The implementation of this model in a firmware reveals that it may not be as efficient as some manually tuned micro-benchmarks. But our multiqueue receive stack generally performs better than the original single queue stack, especially on large communication patterns where multiple processes are involved and manual binding is difficult.