- Le computing réversible est une méthode théorique qui exécute les calculs en sens inverse afin d’économiser de l’énergie sans supprimer de données, et attire l’attention comme alternative au problème de la consommation énergétique de l’IA
- Les ordinateurs classiques dissipent inévitablement de la chaleur (de l’énergie) lors de la suppression d’informations, une contrainte physique impossible à éviter à cause du principe de Landauer
- Le concept d’uncomputation consiste à ne conserver que le résultat du calcul et à annuler le reste en exécutant les opérations à rebours, sans perte d’information, mais il présente des limites pratiques comme la vitesse et le coût mémoire
- Des travaux récents ont montré empiriquement que, pour des tâches fortement parallèles comme celles de l’IA, faire fonctionner de nombreuses puces réversibles plus lentement permet d’importantes économies d’énergie
- L’industrie et les chercheurs se lancent désormais dans le développement de véritables puces réversibles commerciales, ce qui renforce la possibilité d’une révolution de l’efficacité énergétique de l’IA
La perte d’énergie fondamentale dans le calcul informatique
- Quand un ordinateur additionne deux nombres, par exemple 2 + 2 = 4, il ne conserve qu’une seule sortie à partir de deux entrées
- Une partie de l’information disparaît alors, rendant l’opération irréversible, et cette information supprimée se transforme en énergie thermique
- Comme la plupart des ordinateurs fonctionnent de cette manière, une certaine perte d’information (et donc génération de chaleur) est fondamentalement inévitable
La proposition de calcul réversible de Landauer et ses limites
- Landauer a envisagé un mode de calcul qui réduit la perte d’énergie en enregistrant tous les résultats intermédiaires sans jamais supprimer d’information
- Mais il a constaté qu’un tel ordinateur manquerait très vite de mémoire dans la pratique, ce qui en limite fortement l’utilité réelle
- Landauer a donc fini par considérer que le calcul réversible était une impasse
L’idée d’uncomputation de Bennett
- En 1973, Charles Bennett d’IBM a proposé une méthode consistant à ne conserver que le résultat final et à effacer le reste en rejouant le calcul à l’envers (
uncomputation)
- Comme Hansel et Gretel qui ramasseraient à nouveau leurs miettes de pain, cette approche permet de ne garder que les données nécessaires et d’éliminer le reste sans perte d’information
- Cette méthode a toutefois été jugée inefficace car elle double le temps de calcul
L’émergence de recherches plus pratiques
- En 1989, Bennett a montré qu’en utilisant un peu plus de mémoire, il était possible de réduire fortement le temps de calcul
- Par la suite, les chercheurs ont poursuivi leurs travaux sur l’optimisation mémoire/temps
- Mais les ordinateurs perdent de l’énergie non seulement lors de la suppression des données, mais aussi à cause de l’inefficacité propre à la façon dont les transistors sont interconnectés
- Pour fabriquer de véritables ordinateurs réversibles sobres en énergie, il faut donc dès la conception une architecture à faibles pertes thermiques
La puce prototype du MIT et la réaction de l’industrie
- Dans les années 1990, des ingénieurs du MIT ont fabriqué une puce prototype améliorant l’efficacité des circuits
- Frank y a participé en tant que doctorant et est devenu l’une des figures majeures du calcul réversible
- Mais dans un contexte industriel où les performances des puces classiques progressaient rapidement, le manque d’intérêt de l’industrie pour cette alternative théorique a limité les soutiens
- Frank a lui aussi mis ses recherches de côté pendant un temps pour explorer d’autres voies
- Toutefois, à mesure que les circuits approchent leurs limites de miniaturisation, l’intérêt pour l’efficacité énergétique a fortement augmenté
L’efficacité énergétique du calcul réversible et son application possible à l’IA
- En 2022, Hannah Earley de Cambridge a mené une analyse fine de l’efficacité énergétique des ordinateurs réversibles
- Les ordinateurs réversibles dégagent moins de chaleur que les systèmes classiques, sans pour autant pouvoir fonctionner sans aucune dissipation thermique
- Ses travaux ont notamment montré que plus un ordinateur réversible fonctionne lentement, moins il dégage de chaleur
- Comme les calculs d’IA s’exécutent dans des environnements hautement parallèles, faire tourner chaque puce plus lentement tout en augmentant leur nombre pourrait réduire la consommation énergétique totale
- Cette moindre vitesse pourrait aussi faire baisser les coûts de refroidissement et permettre une plus forte densité de puces, avec à la clé des gains d’espace et de matériaux
Les mouvements vers la commercialisation et les perspectives
- Les investisseurs commencent à s’y intéresser, et Earley comme Frank ont fondé Vaire Computing pour développer des puces réversibles commerciales
- Mogensen, de l’université de Copenhague, entre autres, se montre très optimiste quant à l’application concrète de processeurs réversibles dans le monde professionnel
- Le calcul réversible, longtemps resté théorique pendant des décennies, est désormais observé de près pour voir s’il peut apporter une innovation concrète dans l’IA et l’efficacité énergétique
Conclusion
- Le computing réversible est considéré comme une approche concrète pour dépasser la limite physique des ordinateurs selon laquelle la suppression d’information produit de la chaleur, et attire l’attention comme technologie majeure d’économie d’énergie à l’ère de l’IA
- Une exploitation des puces plus lente et plus parallèle s’accorde avec les caractéristiques structurelles des calculs d’IA, rendant une commercialisation réelle de plus en plus plausible
1 commentaires
Avis Hacker News
Dans le roman Time de Stephen Baxter, l’intrigue évoque un futur extrêmement lointain où toutes les étoiles ont disparu, tous les trous noirs se sont évaporés et les descendants de l’humanité subsistent dans un univers à entropie maximale, sans aucune énergie libre disponible ; dans cet état, ils vivent à l’intérieur d’une immense simulation en répétant les mêmes événements uniquement via des calculs réversibles (fonctionnant sans dépense d’énergie), en annulant les résultats des calculs puis en les recalculant pour rejouer indéfiniment la même boucle d’événements
Du point de vue d’un ingénieur logiciel, plusieurs aspects semblent difficiles à saisir : l’idée selon laquelle supprimer de l’information ferait « disparaître » des électrons paraît déroutante au premier abord ; les électrons disparaissent-ils partout, et comme la plupart des portes fonctionnent via la négation du courant, est-ce que tout cela est mauvais ? Pourquoi enregistrer tous les changements de mémoire permettrait-il d’éviter les pertes thermiques ? Si toute la mémoire doit être conservée en permanence, cela ne consommerait-il pas encore plus d’énergie ? Et, d’un point de vue pratique, pourquoi serait-il nécessaire de remonter dans le passé au cours d’un calcul ?
En théorie, un ordinateur qui n’oublie jamais l’information pourrait être implémenté avec une consommation électrique quasi nulle, et donc sans quasiment produire de chaleur ; ce type d’ordinateur relève du calcul réversible (adiabatique), où toutes les portes de calcul doivent être inversibles. Il faut encore de l’énergie dans les toutes premières et toutes dernières étapes, comme pour fixer l’état d’entrée ou copier la sortie. Dans la réalité, la majeure partie de la consommation électrique ne vient pas de la « suppression » d’information par les portes logiques, mais de pertes comme la résistance des interconnexions. Construire un CPU totalement réversible exigerait du matériel spécialisé, comme des interconnexions ou composants supraconducteurs. Il faut aussi pouvoir inverser le calcul, ce qui est loin d’être trivial ; sinon, on peut simplement effacer l’état en acceptant la dépense d’énergie. Un exemple concret est l’ordinateur quantique, où les portes logiques quantiques sont toutes réversibles et peuvent être exécutées à l’envers
Du point de vue de la thermodynamique, un processus réversible est théoriquement celui qui maximise l’efficacité ; cela est lié à l’entropie. Effacer de l’information rend le processus non réversible, donc la production de chaleur devient inévitable. Mais tout cela reste très théorique, et les ordinateurs réels sont encore très loin de cette limite ; la plupart des composants logiques concrets, comme AND, OR ou NAND, sont par nature irréversibles lorsqu’ils sont considérés isolément
Les supports de stockage persistants comme les disques durs et les SSD ne consomment aucune énergie pour conserver les données, et ne produisent donc pas de chaleur pour cela ; en revanche, effacer ou écraser des données demande inévitablement de l’énergie, avec une production de chaleur importante. Les problèmes de dissipation thermique constituent un obstacle majeur à la miniaturisation accrue des puces. Si l’on pouvait concevoir un ordinateur qui n’efface pas l’information, la production de chaleur diminuerait fortement, ce qui pourrait améliorer les performances des puces, réduire la consommation et rouvrir des possibilités en matière de scaling
Le motif de l’économie d’énergie laisse un peu sceptique, mais le simple fait d’implémenter des architectures de deep learning réversibles constitue un sujet de recherche assez fascinant ; cela a d’ailleurs été activement discuté entre 2019 et 2021, notamment dans la série invertibleworkshop. Les modèles de diffusion en vogue récemment peuvent aussi être vus comme un cas particulier de normalizing flow continu, donc théoriquement réversibles du point de vue du calcul. En pratique, les modèles distillés utilisés en production ne le sont presque jamais. Même les simulations d’équations différentielles sont difficiles à inverser exactement à cause des erreurs d’arrondi en virgule flottante, mais avec suffisamment de soin, on peut obtenir des simulations parfaitement réversibles bit à bit
Réflexion sur ce que signifie le fait qu’un calcul ait une direction ; cela ressemble à de la causalité, mais au fond il s’agit plutôt d’une question d’entrée et de sortie. On a l’impression qu’il faut de toute façon exécuter le programme une première fois, et que conserver l’état ne facilite finalement que le backtracking
Oui, mais ici on parle du niveau physique, donc il faut du matériel distinct ; l’effacement d’information (par exemple dans une opération AND) produit de la chaleur, d’où le besoin de portes logiques différentes, comme la porte de Fredkin
En réalité, tous les calculs ont une direction. C’est un sujet jugé extrêmement intéressant. Par exemple, une fonction
f(x) -> yindique déjà une direction ; on aimerait que le sens inverse soit toujours possible, mais certaines fonctions ne sont pas inversibles. Par exemple,f(x)=mx+ba une inverse facile à trouver (tant quem=0n’est pas le cas), alors que pourf(x)=x^2, reconstruirexà partir def(x)n’est pas unique puisque±xconviennent. On peut appliquer ici les notions d’image et de préimage. Cela touche aussi de près au problème P=NP. En machine learning, les normalizing flows sont inversibles, les modèles de diffusion ont une structure réversible, et l’usage du terme « inverse problem » dans la communauté ML agace personnellement. Comprendre ce concept permet de voir pourquoi les prédictions peuvent être exactes dans un sens mais échouer dans l’autre. Au bout du compte, cela renvoie à la question de l’inférence causale. En physique, un objectif majeur consiste à transformer les équations pour produire une carte causale, mais des difficultés propres apparaissent avec l’entropie et la mécanique quantique. Par exemple, si l’on inverse le calcul de l’état de molécules de gaz, on obtient souvent plusieurs états possibles plutôt qu’une solution unique. Comme avec la différentiation et l’intégration, la dérivation n’est pas réversible : toutes les fonctionsf(x)+Cdonnent la même dérivée ; il y a donc perte d’information dans un seul sens. En échantillonnant l’état à plusieurs instants, l’espace des solutions peut toutefois se réduire fortementEn conclusion, si l’on minimise les opérations irréversibles (effacement d’information), un calcul réversible devient possible ; par exemple,
2 + 2 + 2reste réversible si toutes les étapes sont enregistrées, mais si l’on ne conserve que le résultat final en effaçant l’historique (il ne reste que6), cela devient irréversibleSuivre Mike P Frank sur Twitter permet de voir régulièrement des remarques intéressantes sur le reversible computing et l’IA : MikePFrank sur Twitter
On espère que cette technologie pourra être utile lorsque reviendra une nouvelle vague logicielle fondée sur les datacenters GPU, mais il semble probable qu’elle ne devienne pas un véritable point de bascule, un peu comme avec le paradoxe de Jevons (quand l’efficacité s’améliore, la demande augmente, si bien que la consommation réelle d’énergie ne baisse pas)
Curiosité sur le plan concret : existe-t-il une démonstration réelle d’un
matmulréversible ? Même cette opération semble difficile à rendre réaliste, car l’effacement d’information paraît inévitable au cours des étapes intermédiairesmatmulréversible existe ; mais ce n’est pas possible pour des opérateurs irréversibles comme ReLU. Et, comme l’affirme l’article, il n’est pas évident de comprendre pourquoi simplement exécuter le calcul à l’envers permettrait de consommer moins d’énergieEn voyant le titre de l’article, sentiment d’ironie devant le fait que la page web en question mette déjà 12 secondes à charger sur un ordinateur moderne ; les gens se soucient rarement des problèmes des autres, et lorsque de nouvelles technologies apparaissent (comme l’IA), leurs coûts sociaux — environnement, emplois individuels, infrastructures, violations du droit d’auteur, systèmes sociaux — ont tendance à être externalisés. Lorsqu’on gagne en efficacité, on finit généralement par l’utiliser davantage pour soi-même, sans réellement réduire les dommages causés aux autres
Il a déjà été démontré à plusieurs reprises qu’utiliser un LLM plusieurs fois consomme moins d’électricité que de faire bouillir de l’eau avec une bouilloire électrique