JITs de Traçage dans PyPy : Un Choix Pragmatique ?

2025-01-10

Cet article explore les avantages et les inconvénients des compilateurs JIT de traçage, en se concentrant plus particulièrement sur leur implémentation dans PyPy. Les JITs de traçage, qui génèrent du code en suivant l'exécution du programme, offrent des avantages lorsqu'il s'agit de gérer des langages complexes comme Python, en coupant efficacement les couches d'abstraction et en réduisant la surcharge. Cependant, ils souffrent également d'instabilité des performances et de cas limites. Sur la base de deux décennies d'expérience avec PyPy, l'auteur fournit une analyse nuancée de l'adéquation des JITs de traçage, en les comparant aux JITs basés sur les méthodes. La conclusion suggère que, dans le contexte du méta-JIT de PyPy et compte tenu de ses contraintes de ressources, le traçage reste une approche relativement pragmatique.

Développement JIT de traçage