Chargement...
 
Skip to main content

2 - Les distributions et les noyaux


Noyau 6.x -> qu'apportent-t-ils ?

France
Bonjour tout le monde,

Je creuse les pistes pour le choix d'un noyau 6.x capable du meilleur pour la MAO.
Premièrement, il faut considérer que les options suivantes doivent être choisies lors de la compilation du noyau :
Copy to clipboard
PREEMPT DYNAMIC CONFIG_NO_HZ_FULL=y CONFIG_RCU_NOCB_CPU=y CONFIG_RCU_LAZY=y CONFIG_HZ=1000

Ensuite lors que l'on démarre avec ce noyau, les paramètres et options de démarrage des noyaux 6.x, à passer dans GRUB par exemple, sont :
Copy to clipboard
preempt=full nohz_full=all threadirqs

Avec tout celà, les noyaux de la série 6 doivent avoir les mêmes capacités que les anciens Basses latences. De plus, en changeant seulement les options de démarrage et donc avec le même noyau, on peut passer d'une configuration MAO à une configuration Bureautique.

Voir le document suivant qui en parle :
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2051342 Image

Un exemple du retour de uname pour mon noyau :
Copy to clipboard
$ uname -a Linux GMC 6.3.2-arch1-1 #1 SMP PREEMPT_DYNAMIC Thu, 11 May 2023 16:40:42 +0000 x86_64 GNU/Linux

J'ai créé une page qui tente de remonter les améliorations apportées aux différentes version du noyau qui concernent l'audio et la MAO. Elle se trouve ici : Améliorations audio par version de noyau
C'est l'éternel débat entre noyau low latency ou pas ...
J'ai des machines avec ancien noyau low latency , et une autre à jour du dernier kernel debian testing, pas low latency.
Je n'ai pas constaté de différence à l'usage.
J'ai posé la question sur des forums et fait des recherches concernant le PREEMPT_DYNAMIC, mais je n'ai toujours pas compris ce que ça apportait concretement. Il me semble qu'il est arrivé sur la machine via pipewire, car des collègues aussi en testing sans pipewire n'ont pas un kernel avec cette option.
France
Salut piratebab,
Je crois avoir compris que PREEMPT_DYNAMIC sert à permettre à l'utilisateur de choisir le mode de préemption du noyau au moment de l'amorçage en spécifiant l'option voulue dans la ligne de commande dédiée.
Du coup, avec un seul noyau, tu peux choisir d'utiliser le noyau comme un noyau bureautique ou basse latence.
Allez je vais chercher encore des informations... car depuis :
Copy to clipboard
Linux GMC 6.4.3-arch1-2 #1 SMP PREEMPT_DYNAMIC Sat, 15 Jul 2023 19:25:49 +0000 x86_64 GNU/Linux

France
Merci piep ! c'est une bonne source le site internet kernelnewbies.org.

Pour ce qui est de PREEMPT_DYNAMIC, tu as une idée d’où trouver les infos ?
France
Je viens de lire ça :
Dans kernelnewbies écrit:
Linux prend en charge différents modèles de préemption.

Actuellement, l'utilisation d'un modèle de préemption (none/voluntary/model) est une option de configuration à la compilation.

Cette version ajoute les options de démarrage preempt=none/voluntary/full (par défaut : full), pour permettre aux distributions de construire un noyau PREEMPT mais de revenir à un comportement d'ordonnancement proche de PREEMPT_VOLUNTARY (ou PREEMPT_NONE) par le biais d'une sélection au démarrage.

Il y a aussi l'option /debug/sched_debug pour effectuer cette opération au moment de l'exécution. Cette fonctionnalité est implémentée par le biais d'un correctif d'exécution (une nouvelle variante des appels statiques).


Ici en anglais : https://kernelnewbies.org/Linux_5.12
France
Puisqu'on parle de noyaux ici et que beaucoup d'entre nous utilisent des interfaces audio USB, je pense qu'il faudrait parler quelque part des avancées apportées par le noyau 5.16.
https://kernelnewbies.org/Linux_5.16#Audio
France
Salut Julien.

Je dirais : dans le prochain édito si c'est pas hyper long (pas plus de 30 lignes au doigt mouillé).
Sinon, dans une nouvelle dédiée ça serait bien aussi.
France
Je reviens par ici avec des informations sur les paramètres à passer au noyau au moment de l'amorçage.
Effectivement, depuis que le noyau est préemptible de manière dynamique, il est possible d'utiliser un paramètre au démarrage pour choisir le comportement voulu.

Dans la documentation du noyau qui est disponible en ligne ici, on peut lire ceci :
Copy to clipboard
preempt= [KNL] Select preemption mode if you have CONFIG_PREEMPT_DYNAMIC none - Limited to cond_resched() calls voluntary - Limited to cond_resched() and might_sleep() calls full - Any section that isn't explicitly preempt disabled can be preempted anytime.

Et pour notre cas d'usage qu'est la MAO il semble que le mode "preempt=full" soit le mode à utiliser.

Cette option est donc à passer à un noyau qui aurait été configuré pour ça, comme le mien par exemple :
Copy to clipboard
$ uname -a Linux GMC 6.6.4-arch1-1 #1 SMP PREEMPT_DYNAMIC Mon, 04 Dec 2023 00:29:19 +0000 x86_64 GNU/Linux

France
OK, chouette. Tu comptes traduire en français ?
France
Ah ! j'avais pas pensé à ça ! euh ... je ne sais pas là pour l'instant. Mais il faudrait le faire !

En fait je me dis que ce serait judicieux de trier ...

je vais faire un fil de discussion pour cette page parce que je vois bien qu'on va en discuter pendant un moment. 😊
France
Par principe, si ça n'est pas traduit en français, alors ça n'a pas vraiment sa place sur linuxmao.
Dans ce cas, un simple lien vers une source originelle suffirait.
Lien que l'on pourrait mettre directement dans la page du noyau.
France
J'ai le même avis finalement. Merci pour cette réflexion.
J'ai commencé le boulot. Je vais relire pour voir si c'est à peu près clair.
France
OK.
Tiens au jus quand tu penses que cette page sera terminée dans son fonctionnement et sa méthode, et je l’intégrerai dans la doc.
France
Bon j'avance sur PREEMPT=full, dans dmesg, il y a la réponse à cela :
Copy to clipboard
[ 0.118275] Dynamic Preempt: full

Chez moi ça donne ça.
France
J'en suis au 5.17 et je découvre des choses à chaque version du noyau. C'est vraiment bien. je me régale.
J'ai hâte de faire le 5.16 qui va me réserver un tas de surprises !
France
Chouette boulot.
Tu penses remonter jusqu'à quelle version avant de considérer qu'elle est prête à être intégrée dans la doc ?
France
Merci olinuxx. 😊

Je vais essayer d'aller le plus loin possible. Tant que j'ai le courage de le faire et que je trouve les informations.
Dans un premier temps j'aimerais atteindre au minimum le noyau 5.0.
Ensuite aller jusqu'au 4.0. puis je pense que je m'arrêterai là, à moins d'une demande particulière des membres de LinuxMAO ou d'ailleurs.
France
Ça va etre enorme le noyau 6.8 pour les scarlettes !
Les développeurs ont vraiment fait un super boulot pour ajouter toutes les fonctionnalités des cartes.
France
- cette page sur les noyaux Linux est une très bonne idée.
- j'ajouterais la date de sortie à coté du numéro de noyau. ça parlerait un peu plus. [edit- jujudusud] C'est fait pour tous les noyaux.
- Pour les Focusrite / Scarlett et autres Clarett le noyau 6.7 apporte déjà beaucoup. et autorise le mixeur alsa-scarlett-gui en version 0.3.3. Dommage il ne compile pas pour debian 11 (bullseye) qui n'a pas GTK4.
Page: 1/3  [Suivant]
1  2  3