Fedora Linux prend déjà en charge l'utilisation de glibcHWCAP, permettant de créer des bibliothèques pour différents niveaux de fonctionnalités de la microarchitecture x86_64 pour le code sensible aux performances afin que des gains de performances puissent être obtenus en exploitant AVX/AVX2 ou d'autres extensions de jeu d'instructions de processeur Intel/AMDC plus récentes. Désormais, Fedora42 propose d'étendre davantage cette fonctionnalité pour permettre aux exécutables binaires d'exploiter également glibcHWCAP pour de meilleures performances.
Fedora42 a soumis une proposition de modification pour autoriser les binaires optimisés pour le niveau de fonctionnalité de la microarchitecture x86_64. Son but est d'étendre le mécanisme glibc-hwcaps aux exécutables complets, pas seulement aux bibliothèques partagées.
Quels packages fournissent un code optimisé, et à quel niveau, seront déterminés par les responsables de packages individuels en fonction des résultats de référence.
...
Ce changement concerne l'extension du mécanisme glibc-hwcaps aux fichiers exécutables. Nous fournissons un petit binaire d'assistance. Les programmes dans /usr/bin (ou d'autres chemins) sont liés à ce programme d'assistance. Une fois exécuté, le programme d'assistance vérifie les capacités du processeur et recherche dans une hiérarchie de répertoires distincte la variante la plus appropriée du programme cible. Lancez ensuite le binaire optimisé ou le binaire "universel" compilé pour la ligne de base. "
Le changement proposé ajoute ensuite :
Notez que d'autres distributions utilisent des niveaux de microarchitecture plus élevés. Par exemple, RHEL9 utilise x86-64-v2 comme base, RHEL10 utilise x86-64-v3 et d'autres distributions proposent des variantes optimisées (OpenSUSE, ArchLinux, Ubuntu). La façon dont nous implémentons les mêmes changements dans Fedora est beaucoup plus étroite et donc nettement inférieure en termes d'effort de développement, de temps de compilation du code, de stockage et de surcharge de publication, mais devrait offrir les mêmes avantages en termes de performances et de consommation d'énergie. "
Il appartiendra toujours aux empaqueteurs/développeurs Fedora d'évaluer eux-mêmes les avantages en termes de performances et de décider s'ils doivent fournir à leurs packages des exécutables optimisés pour différents niveaux de fonctionnalités de la microarchitecture x86_64.