ACCL est un noyau Vitis et les pilotes XRT associés qui, ensemble, fournissent des collectifs de type MPI pour les FPGA Xilinx. L'ACCL est conçu pour permettre aux noyaux de calcul résidant dans la structure FPGA de communiquer directement sous la supervision de l'hôte, mais sans nécessiter de mouvement de données entre le FPGA et l'hôte. Au lieu de cela, ACCL utilise des piles TCP et UDP compatibles Vitis pour connecter les FPGA directement via Ethernet jusqu'à 100 Gbit/s sur les cartes Alveo.
ACCL prend actuellement en charge Send/Recv et les collectifs suivants :
Consultez INSTALL.md pour savoir comment créer des conceptions compatibles ACCL et interagir avec elles à partir de C++. Pour utiliser ACCL depuis Python, reportez-vous à PyACCL.
Si vous utilisez notre travail ou souhaitez le citer vous-même, veuillez utiliser la citation suivante :
@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}}