Crédit :NSLAB au KTH Royal Institute of Technology
Avec la fin de la loi de Moore, les systèmes de stockage se tournent vers des accélérateurs matériels tels que les FPGA pour décharger les tâches gourmandes en calcul du CPU. Cependant, le provisionnement de ces accélérateurs a un prix élevé.
Des chercheurs du KTH Royal Institute of Technology et de trois autres universités ont découvert qu'il existe un autre moyen de décharger l'informatique sans faire de tels investissements. Il s'avère que les cartes d'interface réseau (NIC) de base qui prennent en charge RDMA, une fonctionnalité qui permet de lire/écrire directement la mémoire du serveur, sont Turing complètes. Cela signifie qu'ils sont suffisamment puissants pour effectuer des calculs arbitraires plutôt que de simplement envoyer et recevoir des paquets. En d'autres termes, ces cartes réseau peuvent être efficacement converties en processeurs plus petits pour décharger les tâches informatiques, réduisant ainsi la charge sur les processeurs des serveurs. De plus, cela peut également réduire la consommation d'énergie puisque les cartes réseau utilisent des puces à faible consommation d'énergie.
Selon l'article, qui a été publié au NSDI 2022 au printemps, de tels déchargements peuvent être effectués sans aucune modification matérielle de ces cartes réseau. Pour ce faire, les auteurs ont créé un framework appelé RedN qui combine des opérations RDMA (qui effectuent des lectures/écritures en mémoire) pour exprimer des constructions plus sophistiquées, telles que des instructions conditionnelles et même des boucles.
"Ce qui est intéressant avec cette découverte, c'est que les cartes réseau RDMA sont des produits de base, elles sont donc beaucoup plus accessibles pour les déchargements", déclare Waleed Reda, l'auteur principal de cet article et chercheur au KTH. "En tant que tel, le potentiel d'impact est beaucoup plus élevé car il existe des millions de ces appareils déjà déployés dans les centres de données d'aujourd'hui."
Évolution de la norme RDMA
"RedN devrait permettre aux chercheurs d'expérimenter plus facilement les déchargements de cartes réseau et aider à accélérer l'innovation dans ce domaine", déclare Waleed. "De plus, selon la façon dont les gens utilisent RedN, je pense que notre cadre peut créer suffisamment de traction pour pousser à des changements dans la norme RDMA elle-même, pour peut-être ajouter des opérations RDMA plus avancées qui améliorent l'efficacité du déchargement."
L'article a évalué les avantages de RedN en montrant qu'il peut entièrement décharger les opérations GET pour un magasin clé-valeur populaire appelé Memcached, réduisant les cycles du processeur et améliorant la latence jusqu'à 2,6x et 35x dans les paramètres peu chargés et fortement chargés, respectivement.
Quelle est la prochaine ?
"Ce travail ouvre de nombreuses opportunités de recherche de suivi. Notre article s'est principalement concentré sur le déchargement des tâches de stockage courantes telles que l'accès aux tables de hachage distantes pour Memcached. Cependant, de nombreuses autres applications potentielles peuvent être ciblées, notamment les transactions de base de données, l'apprentissage automatique distribué. , et bien d'autres », dit Waleed.
"Au-delà de cela, nous envisageons également d'automatiser la génération de code RDMA pour faciliter l'utilisation de RedN par les développeurs", ajoute-t-il. "Plus tard, nous pourrions choisir de créer un compilateur qui convertit le langage de type C en code RDMA exécutable pour réduire davantage le temps de développement."
Le projet RedN a été mis à disposition en open source pour faciliter la poursuite des recherches et des expérimentations à l'aide de ce cadre. RedN a été en partie soutenu par le projet ERC ULTRA. La technologie de désagrégation de la mémoire basée sur CXL ouvre une nouvelle direction pour les frameworks de solutions Big Data