ACCL ist ein Vitis-Kernel und zugehörige XRT-Treiber, die zusammen MPI-ähnliche Kollektive für Xilinx-FPGAs bereitstellen. ACCL wurde entwickelt, um in der FPGA-Fabric ansässigen Rechenkernen die direkte Kommunikation unter Host-Überwachung zu ermöglichen, ohne dass Datenbewegungen zwischen FPGA und Host erforderlich sind. Stattdessen verwendet ACCL Vitis-kompatible TCP- und UDP-Stacks, um FPGAs direkt über Ethernet mit bis zu 100 Gbit/s auf Alveo-Karten zu verbinden.
ACCL unterstützt derzeit Send/Recv und die folgenden Kollektive:
Unter INSTALL.md erfahren Sie, wie Sie ACCL-fähige Designs erstellen und über C++ mit ihnen interagieren. Informationen zur Verwendung von ACCL aus Python finden Sie unter PyACCL.
Wenn Sie unsere Arbeit verwenden oder sie selbst zitieren möchten, verwenden Sie bitte die folgende Zitiermöglichkeit:
@INPROCEEDINGS{9651265,
author={He, Zhenhao and Parravicini, Daniele and Petrica, Lucian and O’Brien, Kenneth and Alonso, Gustavo and Blott, Michaela},
booktitle={2021 IEEE/ACM International Workshop on Heterogeneous High-performance Reconfigurable Computing (H2RC)},
title={ACCL: FPGA-Accelerated Collectives over 100 Gbps TCP-IP},
year={2021},
pages={33-43},
doi={10.1109/H2RC54759.2021.00009}}