L'embarqué > Matériel & systèmes > Sous-système > Une carte de traitement de BittWare fondée sur le FPGA Agilex d’Intel embarque le logiciel unifié oneAPI

Une carte de traitement de BittWare fondée sur le FPGA Agilex d’Intel embarque le logiciel unifié oneAPI

Publié le 24 novembre 2020 à 12:45 par François Gauthier        Sous-système BittWare

Bittware IA 840 F

L'américain BittWare, société du groupe Molex, dévoile l'IA-840F, une carte architecturée autour du FPGA Agilex d’Intel et conçue pour les applications gourmandes en puissance de calcul et pour la gestion réseau dans les centres de données et la périphérie de réseau. Une première sur le marché avec ce FPGA, selon BittWare.

Annoncés en avril 2019 et échantillonnés à l’automne de la même année, les FPFA Agilex d’Intel associent une structure de FPGA classique fabriquée selon un procédé de gravure 10 nm à une technologie de type boîtier-système SiP (System In Package) avec une structure 3D hétérogène. Une approche qui permet, selon le géant des semi-conducteurs, d'intégrer dans un seul boîtier une “mosaïque” (chiplet) de périphériques analogiques, d'interfaces mémoire (DDR4, DDR5, HBM, Optane...), d'unités de traitement maison et d'entrées/sorties personnalisées qui cohabitent avec des blocs technologiques propriétaires eASIC et la matrice de portes logiques du FPGA. Une architecture complexe, unique en son genre, qui, selon Intel, améliore les performances jusqu'à 40% et abaisse la consommation de 40% par rapport aux FPGA Stratix 10.

Sur la carte IA-840F, BittWare a optimisé les fonctions d'entrées/sorties en utilisant l'architecture de la puce Agilex avec deux “cages” QSFP-DD (soit quatre liens à 100 Gbit/s), une interface PCIe Gen4 x16 et trois ports d'extension généralistes pour diverses applications. Parallèlement, BittWare prend en charge sur cette plate-forme la technologie oneAPI d’Intel, une pile logicielle censée autoriser l'écriture du code une fois pour l'exécuter sur des architectures hétérogènes (CPU, GPU et FPGA), avec comme objectif la mise en place d’un flux de développement abstrait pour une réutilisation simplifiée du code sur plusieurs architectures.

Cet environnement de programmation “unifié” permet aux développeurs de programmer le FPGA Agilex à partir d'une seule base de code écrite dans un langage natif de haut niveau. Plus précisément, afin de rationaliser le développement inter-architectures, oneAPI comprend un langage de programmation direct, le Data Parallel C++, et un ensemble de bibliothèques pour une programmation fondée sur des API. Data Parallel C++ s’appuie sur du code C++ et intègre le langage SYCL spécifié par le Khronos Group. Il s’agit ici d’autoriser les développeurs de systèmes embarqués qui utilisent le langage de programmation C++ à exploiter le langage OpenCL destiné à la programmation parallèle des architectures multiprocesseurs hétérogènes à travers un framework écrit en C++. L’objectif étant de faciliter l’utilisation de l’OpenCL, langage reposant sur un C classique, pour les développeurs rompus aux arcanes du C++. Cette approche mixte permet, selon BittWare, de simplifier considérablement la réutilisation du code sur plusieurs architectures tout en facilitant le réglage personnalisé des accélérateurs matériels.

« Les FPGA Intel Agilex et les outils logiciels multiplateformes, dont la boîte à outils oneAPI, ouvrent la voie à un accès plus facile à ces FPGA de nouvelle génération et à leurs formidables capacités - notamment l'intégration des structures d’Asic structurés eASIC d’Intel, de blocs de calcul optimisés, de mémoire à bande passante élevée HBM, de liens d’interconnexion CXL… - avec des débits de données de 112 Gbit/s et une connectivité vers l’extérieur de 400 Gbit/s », détaille Patrick Dorsey, vice-président produit, groupe des solutions programmables, chez Intel.

Les premières livraisons de cartes IA-840F sont prévues pour le deuxième trimestre 2021. Les utilisateurs peuvent acquérir la carte préintégrée dans un serveur Dell ou HPE au sein de la gamme TeraBox de BittWare. Chaque serveur TeraBox est livré avec une carte FPGA, un système d'exploitation, un pilote et des outils de développement préinstallés.

 

Sur le même sujet