Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Incorrect implementation of priority queues. The simulator read reads packet priorities incorrectly.

  • No shared buffer pools. The simulator implements only statically allocated pools. For best performance, Homa needs shared buffer pools (which are common in modern switches); statically allocated pools can result in unnecessary packet drops.

  • No support for non-uniform RTTs. Homa senders are allowed to transmit one BDP of data unilaterally for each message, without waiting for grants. This amount depends on the round-trip time between sender and receiver. In most datacenter fabrics, RTTs are non-uniform (e.g., in the PowerTCP simulations intra-rack RTTs were 4 usec, while inter-rack RTTs were 28 usec); it has been our expectation that in environments like this Homa should use different BDP values for different sender-receiver pairs, depending on their RTTs (which should be measured dynamically). However, this expected behavior is not specified in any of the Homa papers, and the simulator supports only a single RTT value for all client-server pairs.

  • Sender-driven retry. The simulator had an option to use sender-driven retry, which was enabled for the PowerTCP measurements. This is not part of the Homa design (Homa uses receiver-driven retry) and it causes poor performance under some conditions.

...