Beehive: A Flexible Network Stack for Direct-Attached Accelerators
<|reference_start|>Beehive: A Flexible Network Stack for Direct-Attached Accelerators: Direct-attached accelerators, where application accelerators are directly connected to the datacenter network via a hardware network stack, offer substantial benefits in terms of reduced latency, CPU overhead, and energy use. However, a key challenge is that modern datacenter network stacks are complex, with interleaved protocol layers, network management functions, and virtualization support. To operators, network feature agility, diagnostics, and manageability are often considered just as important as raw performance. By contrast, existing hardware network stacks only support basic protocols and are often difficult to extend since they use fixed processing pipelines.   We propose Beehive, a new, open-source FPGA network stack for direct-attached accelerators designed to enable flexible and adaptive construction of complex network functionality in hardware. Application and network protocol elements are modularized as tiles over a network-on-chip substrate. Elements can be added or scaled up/down to match workload characteristics with minimal effort or changes to other elements. Flexible diagnostics and control are integral, with tooling to ensure deadlock safety. Our implementation interoperates with standard Linux TCP and UDP clients, with a 4x improvement in end-to-end RPC tail latency for Linux UDP clients versus a CPU-attached accelerator. Beehive is available at https://github.com/beehive-fpga/beehive<|reference_end|>
@article{lim2024beehive:,
    title={Beehive: A Flexible Network Stack for Direct-Attached Accelerators},
    author={Katie Lim, Matthew Giordano, Theano Stavrinos, Irene Zhang, Jacob
  Nelson, Baris Kasikci, Tom Anderson},
    journal={arXiv preprint arXiv:2403.14770},
    year={2024},
    archivePrefix={arXiv},
    eprint={2403.14770},
    primaryClass={cs.AR}
}