Linus Torvalds a annoncé dimanche que la fenêtre de fusion du noyau Linux 6.3 est terminée et que cette version supprime le support du compilateur Intel ICC. Plus précisément, il s'agit du compilateur ICC d'Intel, mieux connu sous le nom de "Intel C++ Compiler Classic" avant sa transition vers LLVM/Clang avec le compilateur moderne Intel DPC++. La première version candidate de Linux 6.3 vient d'être publiée et l'on en sait maintenant un peu plus sur les fonctionnalités et les changements dans cette nouvelle mouture du noyau. Une des fonctionnalités clés qui a été ajoutée à Linux 6.3 est le nouvel outil "rtla hwnoise".
Il y a quelques mois, il était question que le noyau Linux abandonne la prise en charge du compilateur ICC d'Intel et maintenant, avec Linux 6.3, c'est désormais chose faite. En effet, alors que le compilateur LLVM/Clang est de plus en plus utilisé par divers développeurs et organisations pour construire le noyau Linux principal en tant que support complémentaire au compilateur GCC qui a longtemps été la cible prédominante du compilateur, le compilateur ICC d'Intel a également été en mesure de construire le noyau Linux, bien qu'il ne soit pas largement utilisé. Mais les développeurs du noyau ont décidé de supprimer le support du compilateur ICC.
Tout d'abord, Intel ICC est un compilateur C (icc) et C++ (icpc) hautement optimisé utilisé par certains développeurs et organisations pour construire le noyau Linux. La version autonome a été remplacée par Intel OneAPI. Il est disponible pour les plateformes Linux (avant Linux 6.3), Microsoft Windows et Mac OS X. Intel supporte la compilation pour ses processeurs IA-32, Intel 64 et Itanium 2 et pour d’autres siliciums non Intel, mais compatibles, comme certains processeurs AMD, les développeurs doivent vérifier les exigences du système avant de commencer la compilation. Aujourd'hui, plusieurs raisons pourraient avoir motivé son abandon.
L'idée de supprimer la prise en charge du compilateur ICC d'Intel a été évoquée pour la première fois en octobre en octobre dernier par le développeur Linux Masahiro Yamada. Selon les développeurs du noyau Linux, les changements apportés au noyau en amont autour du support du compilateur ICC d'Intel sont minimes et il semble que le support ICC pour la construction du noyau soit actuellement en panne sans que personne ne s'en plaigne. Comme personne ne s'en soucie ou ne le remarque, cette proposition supprimerait le support d'ICC pour le noyau principal et libérerait environ 300 lignes de code actuellement utilisées pour le support d'ICC.
Linus Torvalds, créateur du noyau, a répondu en faveur de l'abandon du compilateur Intel ICC : « je ne pense pas que quelqu'un ait jamais vraiment utilisé l'ICC. Je ne me souviens pas avoir entendu un seul mot sur les problèmes d'ICC, et je ne pense pas que ce soit parce qu'il émulait si bien GCC que personne n'a jamais rencontré de problèmes ». D'autres développeurs du noyau se sont prononcés en faveur de ce changement. De plus, le compilateur ICC d'Intel passant de leur ancienne base de code propriétaire à un modèle basé sur LLVM, le nouveau compilateur ICC pourrait finir par être capable de compiler le noyau en utilisant les chemins Clang.
En gros, le fichier d'en-tête du noyau Linux principal destiné au compilateur Intel n'a pas été touché depuis trois ans, de nombreux développeurs/utilisateurs oublient ou ne sont même pas au courant du support ICC pour la construction du noyau, et il y a au moins un problème flagrant qui n'a pas été rapporté avec les constructions du noyau ICC. En outre, le compilateur ICC classique d'Intel a été abandonné en faveur de leur compilateur plus moderne oneAPI DPC++/C++ construit sur LLVM. Et depuis octobre, personne ne s'est manifesté pour exprimer son intérêt à pouvoir compiler le dernier code du noyau avec ce compilateur classique d'Intel.
L'abandon du support de l'Intel ICC ne devrait donc pas constituer une véritable perte. GCC et LLVM/Clang restent les deux compilateurs clés pour compiler le noyau Linux principal. GCC a longtemps été l'option de facto pour la construction du noyau principal, tandis que ces dernières années, LLVM/Clang mainline s'est avéré tout à fait adapté à la construction du noyau Linux et est utilisé dans un certain nombre de constructions de noyau de production, ainsi que pour l'adaptation de LLVM/Clang à ses diverses caractéristiques de compilateur. Le compilateur ICC d'Intel tire donc sa révérence avec l'arrivée de la version 6.3 du noyau Linux.
La fenêtre de fusion pour Linux 6.3 est maintenant terminée et Linus Torvalds vient de publier Linux 6.3-rc1. Linux 6. 3 sera un gros noyau avec des changements tels que des E/S directes plus rapides pour EXT4, la surveillance des capteurs pour un plus grand nombre de cartes mères ASUS récentes, le pilote AMD-Xilinx XDMA a finalement été fusionné, quelques optimisations de performance AMD Zen 4 via Automatic IBRS, un support adéquat du contrôleur câblé 8BitDo Pro 2, le pilote Intel TPMI a été fusionné, l'introduction du pilote sans fil Ath12k, le support d'IPv4 BIG TCP, des optimisations de performance pour Btrfs, et bien d'autres choses encore.
Par ailleurs, une des fonctionnalités non négligeables qui a été ajoutée à Linux 6.3 est le nouvel outil rtla hwnoise (real time Linux analysis hardware noise). Il permet de détecter et de quantifier le bruit lié au matériel. Il récupère le récapitulatif périodique du traceur "osnoise" en cours d’exécution avec les interruptions désactivées. En désactivant les interruptions et l’ordonnancement des threads, seul le bruit lié aux interruptions non masquables et au matériel est autorisé. Selon la description faite par les mainteneurs de l’outil, ce dernier autorise également les configurations du traceur osnoise et la collecte de la sortie du traceur.
En somme, rtla hwnoise offre des fonctionnalités similaires à osnoise (operating system noise) tout en affichant uniquement les interruptions non masquables (NMI) et le bruit lié au matériel. Avec l'arrivée du nouvel outil rtla hwnoise, les utilisateurs et les développeurs du noyau Linux qui se soucient de chaque microseconde volée par des instructions parasites envoyées par le matériel pourront mesurer avec précision ces bruits et prendre des décisions en conséquence, sachant que pour les opérations en temps réel chaque microseconde gagnée par le processeur a de la valeur.
Source : Linus Torvalds
Et vous ?
Quel est votre avis sur le sujet ?
Que pensez-vous de la suppression du support du compilateur Intel ICC ?
Utilisiez-vous auparavant ce compilateur ?
Quelles comparaisons faites-vous entre Intel ICC et les autres compilateurs du noyau Linux ?
Voir aussi
Linux 6.3 ajoute à ses fonctionnalités le nouvel outil rtla hwnoise qui permet aux utilisateurs de mesurer avec précision les bruits matériels sur le système
Canonical a annoncé la disponibilité générale de son abonnement complet Ubuntu Pro, destiné aux utilisateurs qui souhaitent étendre les mises à jour de sécurité et la conformité de leurs systèmes
Une vulnérabilité avec un score CVSS de 10 a été découverte dans le noyau Linux, seuls les systèmes avec ksmbd activé sont concernés, une MAJ a été publiée pour sa correction
Linux 6.3 abandonne la prise en charge du compilateur Intel ICC et ajoute le support du pilote AMD-Xilinx XDMA,
Le support du pilote sans fil Ath12k et des optimisations de performance pour Btrfs
Linux 6.3 abandonne la prise en charge du compilateur Intel ICC et ajoute le support du pilote AMD-Xilinx XDMA,
Le support du pilote sans fil Ath12k et des optimisations de performance pour Btrfs
Le , par Bill Fassinou
Une erreur dans cette actualité ? Signalez-nous-la !