Flyslice Technologies accélère les applications de transaction à faible latence (LLT) avec la carte d'accélération FA728Q

Flyslice Technologies s'appuie sur le FPGA Intel® Stratix® 10 et l'infrastructure Open Source Open FPGA Stack (OFS) pour développer sa carte d'accélération FPGA hautes performances.

Présentation

  • La carte d'accélération FPGA FA728Q, une carte d'accélération hautes performances basée sur PCIe* et équipée du FPGA Intel® Stratix® 10, est disponible dès aujourd'hui.

  • Flyslice utilise l'infrastructure de base OFS pour accélérer le développement de son gestionnaire d'interface FPGA personnalisé (FIM), qui intègre un moteur de déchargement TCP/IP.

  • La latence de transmission TCP de la carte d'accélération FA728Q est inférieure à 100 ns pour les applications réseau critiques en termes de temps comme le LLT.

author-image

Par

Logo FlysliceSynthèse

Les LLT et les autres applications sensibles au temps sont des cas d'utilisation idéaux pour l'accélération par FPGA. Flyslice Technologies a développé la carte d'accélération par FPGA FA728Q pour répondre aux besoins de ce marché. La plateforme d'accélération FA728Q offre des ressources FPGA puissantes, une capacité de stockage abondante et des interfaces faciles à utiliser pour les utilisateurs finaux. Flyslice Technologies a utilisé l'infrastructure OFS pour accélérer, simplifier et standardiser le développement de sa carte d'accélération. Cette infrastructure offre une méthodologie puissante pour le développement rapide de solutions FPGA en utilisant une approche « take and tailor » (prendre et adapter). Flyslice Technologies utilise l'infrastructure OFS pour intégrer son moteur de déchargement TCP/IP dans le FIM de base Open Source, communément appelé « shell » FPGA.

Historique et difficulté

Le LLT est la pratique moderne d'exécution électronique des transactions de titres financiers avec un délai minimal entre la saisie et l'exécution de l'ordre. Les grandes banques d'investissement, les fonds spéculatifs et d'autres institutions financières utilisent couramment cette méthode. Dans le passé, les transactions étaient exécutées manuellement et non électroniquement, et leur exécution variait de quelques secondes à quelques minutes. Cependant, grâce aux progrès technologiques du matériel et des logiciels correspondants, les systèmes peuvent maintenant être programmés pour prendre automatiquement les décisions d'achat ou de vente en fonction de certains signaux et mouvements du marché, ce qui réduit les délais d'exécution des transactions à quelques millisecondes. Les produits d'accélération par FPGA étant plus largement disponibles depuis quelques années, les temps de transaction ont encore été réduits, atteignant maintenant les microsecondes, voire les sous-microsecondes.

Dans le même temps, les systèmes LLT s'appuient de plus en plus sur des modèles d'algorithmes de transaction complexes propres à la stratégie de transaction de chaque société pour interagir avec le carnet d'ordres. Les solutions nécessitent des processeurs polyvalents et des coprocesseurs spécialisés pour répondre aux exigences des sociétés de transactions en matière de puissance et de performance, comme dans le cas de l'informatique hétérogène. Les FPGA sont tout indiqués pour mettre en œuvre des algorithmes de transaction sur mesure. Toutefois, la programmation de cet appareil d'accélération matérielle peut prendre du temps et être difficile à migrer à mesure que les familles de FPGA s'améliorent et évoluent.

Flyslice Technologies, une société dont le siège est en Chine, répond activement à la demande d'accélération hétérogène des centres de données et de calcul intensif, notamment sur le segment LLT. Ils mettent sur le marché des plateformes d'accélération matérielle basée sur les FPGA, des fonctions de propriété intellectuelle (IP) d'accélération FPGA et des services de conception de plateforme basés sur les FPGA.

Solution

Flyslice Technologies a développé sa carte d'accélération FA728Q pour répondre aux exigences de faible latence, de standardisation et de portabilité des applications LLT. Cette carte instancie un moteur de déchargement TCP/IP intégré. Pour ce faire, Flyslice Technologies a modifié le FIM de base fourni dans la version Open Source d'OFS. Grâce à l'architecture composable et à l'approche « take and tailor », OFS leur a permis de simplement porter leur algorithme sur la carte d'accélération FA728Q tout en exploitant le reste de l'infrastructure fournie, notamment les pilotes et les bibliothèques du logiciel OFS, en n'apportant que des modifications minimes.

OFS avec solution toe mise en œuvre sur le schéma fonctionnel fa728q
Figure 1. OFS avec solution de moteur de déchargement TCP/IP (TOE) mise en œuvre sur la FA728Q

 

OFS est une infrastructure matérielle et logicielle Open Source qui fournit tous les composants clés de design, logiciels et d'infrastructure nécessaires pour démarrer le développement d'une carte ou d'une charge de travail personnalisée basée sur un FPGA. L'infrastructure OFS se compose du FIM, communément appelé « shell », et d'une région AFU (Accelerator Functional Unit) conçue pour le développement de la charge de travail. Grâce à OFS, les développeurs de cartes FPGA (ou FIM) peuvent tirer parti de l'infrastructure Open Source (ou FIM de base) pour développer rapidement un FIM personnalisé et adapté à leur carte en fonction de l'application ou du secteur visé. OFS est également livré avec un package de support d'accélérateur (ASP) oneAPI, qui peut être exploité pour abstraire le matériel FPGA et le flux de design. OFS permet aux développeurs de gagner du temps, d'améliorer la portabilité entre les générations de FPGA, d'utiliser des interfaces standard et de proposer en option un flux de design de haut niveau à l'aide de oneAPI.

La carte d'accélération FA728Q, disponible dès aujourd'hui, est une carte d'accélération FPGA haut de gamme basée sur PCIe et qui offre 32 Go de mémoire DDR4 intégrée et trois sockets QSFP28 pour prendre en charge jusqu'à 100 GbE pour chaque interface. La carte d'accélération FA728Q est également compatible avec oneAPI via l'infrastructure OFS. Les clients peuvent ainsi mettre en œuvre leurs noyaux dans RTL ou migrer des algorithmes du CPU/GPU vers des langages de conception de haut niveau, notamment C/C++. Le kit d'outils Intel® oneAPI Base permet aussi de synthétiser et d'optimiser les noyaux pour les ressources FPGA, ce qui améliore encore les délais de commercialisation.

Flyslice Technologies a également commencé à développer des cartes basées sur le FPGA Intel Agilex®, notamment la carte FA927S qui utilise le FPGA Intel Agilex 7 série I et la carte FA925E qui utilise le FPGA Intel Agilex 7 série F.

La carte FA927S offre des taux d'émetteur-récepteur élevés allant jusqu'à 116 Gbit/s, 16x PCIe 5.0 et la prise en charge de Compute Express Link (CXL). Elle cible les applications gourmandes en bande passante et est disponible dès maintenant pour le développement basé sur RTL. La carte FA927S prendra en charge OFS au premier trimestre 2024.

En revanche, la carte FA925E offre quatre banques de 8 Go et quatre banques de 4 Go DDR4, soit un total de 48 Go de mémoire embarquée. Elle est conçue pour les applications exigeant une capacité de mémoire externe et une bande passante élevées. La carte offre une prise en charge complète d'OFS et sera disponible d'ici à la fin de l'année 2023. Voir le tableau 1 pour comparer les trois cartes d'accélération.

Tableau 1. Tableau comparatif

 

Carte FA728Q

FA728Q

Carte FA927S

FA927S

Carte FA925E

FA925E

Alimentation 215 W 200 W 150 W
Exigence de refroidissement Actif/passif (en option) Actif/passif (en option) Actif/passif (en option)
Format PCIe à double emplacement, 3/4 de longueur, pleine hauteur PCIe à double emplacement, 1/2 de longueur, pleine hauteur PCIe à double emplacement, 3/4 de longueur, pleine hauteur
Interfaces réseau Trois ports QSFP28 : 3 x 100 GbE / 40 GbE Deux ports QSFP28 : 2 x 100 GbE / 40 GbE Deux ports QSFP28 : 2 x 100 GbE / 40 GbE
Interfaces mémoire 4 x 8 Go DDR4, 2 400 MHz avec ECC 4 x 8 Go DDR4, 2 400 MHz avec ECC 4 x 8 Go et 4 x 4 Go DDR4, 2 400 MHz avec ECC
Interfaces PCIe - 5.0 x16 -
Interfaces d'extension - 2 connecteurs SAS slim x8 pour l'extension PCIe 4.0 -
Port de gestion Micro-USB Micro-USB Micro-USB
Dispositif FPGA 1SX280HN2F43E2VG AGIB027R29A1E2VR3 AGFB027R25A2E2V

Résultats

La fonction IP du moteur de déchargement mise en œuvre par Flyslice Technologies sur la carte FA728Q est optimisée pour répondre aux exigences de latence et de performances dans le domaine LLT. En mode accéléré, la latence de transmission TCP est inférieure à 100 ns, ce qui garantit des connexions stables et à faible latence pour les applications réseau critiques en termes de temps. Le tableau 2 montre la latence mesurée pour différentes connections. Le tableau 3 montre les interfaces PCIe 3.0 x16 et DDR à large bande passante.

Spécification Valeur
Nombre maximal de connexions TCP/UDP 63 pour TCP, 63 pour UDP
Latence TCP TX (mode accéléré) 15 horloges
Latence TCP TX (mode non accéléré) 46 horloges
Latence TCP RX 32 horloges
Latence UDP TX 42 horloges pour un paquet de 512 octets 18 horloges pour un paquet de 128 octets
Latence UDP RX 23 horloges
Latence de bouclage pour les noyaux oneAPI 18 horloges

Tableau 2. Spécification du moteur de déchargement TCP/IP (TOE)

Remarque :

1. Une période d'horloge est de 6,4 ns

2. La latence TX est comptée du bord descendant du paquet EOP jusqu'aux données valides dans XGMII TXC

3. La latence RX est comptée du paquet SOP jusqu'aux données valides dans XGMII RXC

Chemin de données Bandes passantes
Mémoire d'écriture de l'hôte 8 287,68 Mbit/s pour un bloc de 8 192 Ko
Mémoire de lecture de l'hôte 8 241,19 Mbit/s pour un bloc de 8 192 Ko
Mémoire d'écriture du noyau 16 909,6 Mbit/s pour un bloc de 4 096 Mo
Mémoire de lecture du noyau 17 340,3 Mbit/s pour un bloc de 4 096 Mo

Tableau 3. Bande passante fournie par chaque interface

Chemin de données à large bande passante dans le schéma fonctionnel de la plateforme ofs
Figure 2. Chemins de données à large bande passante dans la plateforme OFS

 

OFS nous a permis de construire plus facilement et plus rapidement une plateforme d'accélération requise pour les clients, depuis les pilotes d'API logicielles jusqu'au matériel sous-jacent sous forme d'un ensemble complet d'équipements.

Cheng Ailian, Flyslice Technologies, ltd.

Comment se lancer dans l'accélération FPGA à l'aide d'OFS

Les développeurs de FPGA peuvent exploiter la carte d'accélération FA728Q et la carte compatible OFS en utilisant la documentation Open Source et le code source pour commencer à créer leur charge de travail personnalisée.

Le tableau suivant indique comment un développeur peut commencer à développer une charge de travail basée sur un FPGA à l'aide d'une carte d'accélération Flyslice Technologies.

Tirer parti de l'accélération FPGA dans le traitement de votre charge de travail
Étape 1 : choisir une carte Voir la carte compatible OFS de Flyslice Technologies, la carte d'accélération FA728Q
Étape 2 : évaluer les ressources Open Source de l'OFS

Flyslice Technologies fournira la version correspondante de la documentation technique OFS

Étape 3 : accéder au matériel et au code logiciel Open Source

Flyslice Technologies fournira le code logiciel et matériel OFS correspondant. Il s'agit de leur distribution spécifique du code OFS de base fourni par Intel.

Étape 4 : développer une charge de travail à l'aide de RTL ou C/C++ (en utilisant oneAPI)

Suivez le flux RTL OFS

OU

OFS permet la compilation de noyaux oneAPI. Utilisez le flux de développement oneAPI et créez des charges de travail FPGA en C/C++.