Un nouvel outil nommé ARPL optimise l’exécution de llama.cpp sur les smartphones ARM en adaptant dynamiquement ses performances au matériel spécifique de l’appareil.
Jusqu’à présent, llama.cpp, une implémentation légère des grands modèles de langage, fonctionnait sur les téléphones ARM sans tenir compte des spécificités de leur puce. Cela signifiait qu’un appareil doté d’un puissant Snapdragon 8 Elite utilisait les mêmes configurations de nombre de threads et de paramètres de contexte qu’un modèle de milieu de gamme plus ancien, limitant ainsi son potentiel d’efficacité.
ARPL (ARM Runtime ISA/Topology Detection) résout ce problème en détectant à l’exécution les caractéristiques précises du matériel. Il identifie les extensions ISA disponibles, telles que SDOT, I8MM ou SME2, ainsi que la manière dont les cœurs du processeur sont regroupés. Ces informations permettent à ARPL de configurer llama.cpp de manière optimale, sans nécessiter de compilation spécifique par appareil ni d’ajustement manuel.
Cette approche pourrait significativement améliorer la performance et l’efficience des modèles de langage sur une vaste gamme de dispositifs mobiles.
Source : Reddit r/MachineLearning