L’IA n’est que le marché le plus récent et le plus avide pour le calcul haute performance, et les architectes système travaillent sans relâche pour extraire chaque goutte de performance de chaque watt. Startup suédoise Point zéro, armé de 5 millions d’euros (5,5 millions de dollars) de nouveaux fonds, veut les aider avec une nouvelle technique de compression de la mémoire à l’échelle de la nanoseconde – et oui, c’est exactement aussi compliqué que cela en a l’air.
Le concept est le suivant : compresser sans perte les données juste avant qu’elles n’entrent dans la RAM, et les décompresser après, élargissant efficacement le canal de mémoire de 50 % ou plus simplement en ajoutant un petit morceau à la puce.
La compression est, bien sûr, une technologie fondamentale de l’informatique ; comme l’a souligné le PDG de ZeroPoint, Klas Moreau (à gauche dans l’image ci-dessus, avec les cofondateurs Per Stenström et Angelos Arelakis) : « Nous ne stockerions pas de données sur le disque dur aujourd’hui sans les compresser. La recherche suggère que 70 % des données en mémoire sont inutiles. Alors pourquoi ne pas compresser en mémoire ?
La réponse est que nous n’avons pas le Heure. La compression d’un fichier volumineux pour le stockage (ou l’encodage, comme on dit lorsqu’il s’agit de vidéo ou d’audio) est une tâche qui peut prendre quelques secondes, minutes ou heures selon vos besoins. Mais les données passent par la mémoire en une infime fraction de seconde, entrant et sortant aussi vite que le processeur peut le faire. Un délai d’une seule microseconde, pour supprimer les bits « inutiles » d’un paquet de données entrant dans le système de mémoire, serait catastrophique pour les performances.
La mémoire n’avance pas nécessairement au même rythme que les vitesses du processeur, bien que les deux (ainsi que de nombreux autres composants de la puce) soient inextricablement liés. Si le processeur est trop lent, les données sont sauvegardées en mémoire – et si la mémoire est trop lente, le processeur perd des cycles à attendre la prochaine pile de bits. Tout fonctionne de concert, comme vous pouvez vous y attendre.
Bien que la compression ultra-rapide de la mémoire ait été démontrée, elle entraîne un deuxième problème : essentiellement, vous devez décompresser les données aussi vite que vous les avez compressées, en les ramenant à leur état d’origine, sinon le système n’aura aucune idée de la façon de les gérer. Donc, à moins que vous ne convertissiez toute votre architecture vers ce nouveau mode de mémoire compressée, cela ne sert à rien.
ZeroPoint prétend avoir résolu ces deux problèmes avec une compression de mémoire hyper-rapide et de bas niveau qui ne nécessite aucun changement réel dans le reste du système informatique. Vous ajoutez leur technologie à votre puce, et c’est comme si vous aviez doublé votre mémoire.
Bien que les détails ne soient probablement intelligibles que pour les personnes dans ce domaine, les bases sont assez faciles à saisir pour les non-initiés, comme Moreau l’a prouvé lorsqu’il me l’a expliqué.
« Ce que nous faisons, c’est prendre une très petite quantité de données – une ligne de cache, parfois 512 bits – et y identifier des modèles », a-t-il déclaré. « C’est la nature des données, c’est-à-dire qu’elles sont peuplées d’informations pas si efficaces, des informations qui sont peu situées. Cela dépend des données : plus c’est aléatoire, moins c’est compressible. Mais lorsque nous examinons la plupart des charges de données, nous voyons que nous sommes dans la fourchette de 2 à 4 fois [more data throughput than before].”
Ce n’est un secret pour personne que la mémoire peut être compressée. Moreau a déclaré que tout le monde dans l’informatique à grande échelle connaît cette possibilité (il m’a montré un article de 2012 le démontrant), mais l’a plus ou moins considérée comme académique, impossible à mettre en œuvre à grande échelle. Mais ZeroPoint, a-t-il dit, a résolu les problèmes de compactage – réorganiser les données compressées pour être encore plus efficaces – et de transparence, de sorte que la technologie fonctionne non seulement mais fonctionne de manière assez transparente dans les systèmes existants. Et tout cela se passe en quelques nanosecondes.
« La plupart des technologies de compression, à la fois logicielles et matérielles, sont de l’ordre de milliers de nanosecondes. CXL [compute express link, a high-speed interconnect standard] peut ramener ce chiffre à des centaines », a déclaré Moreau. « Nous pouvons le ramener à 3 ou 4. »
Voici le directeur technique Angelos Arelakis qui l’explique à sa façon :