Determination of Throughput Guarantees for Processor-based SmartNICs

bibtex
@inproceedings{krudeDeterminationThroughputGuarantees2021,
  author = {Krude, Johannes and Rüth, Jan and Schemmel, Daniel and Rath, Felix and Folbort, Iohannes-Heorh and Wehrle, Klaus},
  title = {Determination of {{Throughput}} {{Guarantees}} for {{Processor-based}} {{SmartNICs}}},
  booktitle = {17th {{International}} {{Conference}} on emerging {{Networking}} {{EXperiments}} and {{Technologies}} {{(CoNEXT}} 2021)},
  location = {Virtual Event, Germany},
  pages = {267--281},
  year = {2021},
  doi = {10.1145/3485983.3494842},
}

Programmable network devices are on the rise with many applications ranging from improved network management to accelerating and offloading parts of distributed systems. Processor-based SmartNICs, match-action-based switches, and FPGA devices offer on-path programmability. Whereas processor-based SmartNICs are much easier and more versatile to program, they have the huge disadvantage that the resulting throughput may vary strongly and is not easily predictable even to the programmer. We want to close this gap by presenting a methodology which, given a SmartNIC program, determines the achievable throughput of this SmartNIC program in terms of achievable packet rate and bit rate. Our approach combines incremental longest path search with SMT checks to establish a lower bound for the slowest satisfiable program path. By analyzing only the slowest program paths, our approach estimates throughput bounds within a few seconds. The evaluation with our prototype on real programs shows that the estimated throughput guarantees are correct with an error of at most 1.7% and provide a tight lower bound for processor- and memory-bottlenecked programs with only 8.5% and 18.2% underestimation.

Page 1 of ?