Les nouveautés sur Noyau 3.0 (suite)

Magazine
Marque
GNU/Linux Magazine
Numéro
142
Mois de parution
octobre 2011


Résumé
Nous voici de retour pour la suite et fin de la présentation du noyau 3.0, dans laquelle nous abordons, entre autres, des spécificités architecturales, l'ajout de nouveaux types de timers, Cleancache, les améliorations au niveau de la gestion des espaces de noms, etc. En bref, de quoi vous occuper en cette rentrée bien consommée.

1. Architecture

1.1 Suppression du prefetching

Après une séance de profiling du noyau, Linus s'est aperçu que les instructions prefetch figuraient en haut des résultats. Ces instructions accessibles depuis la macro prefetch() pour les développeurs du noyau, sont notamment utilisées dans les opérations de parcours des listes chaînées de façon à améliorer les performances. Seulement voilà, l'effet constaté de ces instructions semble au final inversé. Après plusieurs analyses quantitatives (menées notamment par Ingo Molnar), cet impact négatif sur les performances a été avéré. Le résultat est sans appel et les instructions prefetch ont ainsi été enlevées des opérations de parcours des listes doublement chaînées, des hlist (listes employées dans les tables de hachage) et des listes de sk_buff (utilisées pour le traitement des paquets réseau) dans cette version du noyau.

Voyons un peu plus dans le détail de quoi il retourne. Les instructions de prefetch...

Cet article est réservé aux abonnés. Il vous reste 95% à découvrir.
à partir de 21,65€ HT/mois/lecteur pour un accès 5 lecteurs à toute la plateforme
J'en profite