AKO
Choisir automatiquement la version la plus rapide d'un calcul, après avoir vérifié qu'elle est exacte.Adaptive Optimizer. Un outil de validation pour remplacer des calculs dans un modèle de langage.Adaptive Optimizer. Un pour remplacer des kernels dans un d' .
Un calcul optimisé n'est pas plus rapide partout, et peut être faux sans le dire. AKO teste chaque variante, écarte les fausses et garde la plus rapide.Pour chaque opération, , et , AKO teste les candidats (référence, fusé, , ). Il rejette ceux qui sortent d'un exprimé en , mesure les autres et met la décision en cache, avec ses raisons.
- Mesuré
- Vérifie l'exactitude de chaque version avant de l'utiliser, et évite jusqu'à 55 % de ralentissement face à la version optimisée imposée partout. Mesuré sur un PC portable.Choisir la version par configuration évite jusqu'à 55 % de pénalité ( imposé) et 314 % sur ( imposé). Face à la meilleure : 1,03× à 1,17× en médiane. .Choisir par évite jusqu'à 55 % de pénalité ( imposé partout, qui perd sur 22 des 72 configurations ) et 314 % sur ( imposé partout). Face à la meilleure (presque toujours torch.compile) : 1,03× à 1,17× en médiane. Mesuré sur une .
- Limite
- Couvre trois opérations pour l'instant : effet sur un modèle complet d'environ 1 %.Trois opérations couvertes (≈ 24 % du temps d'un ) : impact global ≈ 1 %. En , 0,69× face au , cause à l'étude.Trois opérations couvertes (≈ 24 % du temps d'un ) : impact global ≈ 1 %. En , 0,69× face au , cause à l'étude.
