ACCL — это ядро Vitis и связанные с ним драйверы XRT, которые вместе обеспечивают MPI-подобные коллективы для FPGA Xilinx. ACCL предназначен для того, чтобы вычислительные ядра, находящиеся в структуре FPGA, могли взаимодействовать непосредственно под контролем хоста, но без необходимости перемещения данных между FPGA и хостом. Вместо этого ACCL использует Vitis-совместимые стеки TCP и UDP для подключения FPGA напрямую через Ethernet со скоростью до 100 Гбит/с на картах Alveo.
ACCL в настоящее время поддерживает отправку/получение и следующие коллективы:
См. INSTALL.md, чтобы узнать, как создавать проекты с поддержкой ACCL и взаимодействовать с ними из C++. Чтобы использовать ACCL из Python, обратитесь к PyACCL.
Если вы используете нашу работу или хотите процитировать ее самостоятельно, используйте следующую ссылку:
@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}}