Aller au contenu

[tuto][initié]La MAO sous Linux! (maj le 09/04/05)


lorinc

Messages recommandés

Processor type and features --->

Preemption Mode (Complete Preemption (Real-Time)) --->

( ) No Forced Preemption (Server)

( ) Voluntary Kernel Preemption (Desktop)

( ) Preemptible Kernel (Low-Latency Desktop)

(X) Complete Preemption (Real-Time) // l'option à choisir

Dans mon kernel 2.6.14.5 je ne trouve dans la dite rubrique l'option "(X) Complete Preemption (Real-Time)" ;)

Lien vers le commentaire
Partager sur d’autres sites

  • Réponses 69
  • Créé
  • Dernière réponse

c'est normal, il faut que tu récupères un kernel patché "mm"

soit tu le patches toi-même, soit tu récupère la version patchée.

la branche mm est officielle et dispo sur kernel.org ;)

Est ce que ca signifie que linux serait un vrai OS temps réel avec ce patch ? Ou c'est encore limité par certaines partie du scheduler mais que ca se rapproche de beaucoup du temps réel ?

Lien vers le commentaire
Partager sur d’autres sites

ah tiens, il ont du virer les dl de kernel patchés pour économiser de la bande passante...

c'est pas grave, c'est assez facile de patcher un kernel. tu récupères les sources correspondantes aux dernier patch mm "stable" ( http://kernel.org/pub/linux/kernel/people/....14/2.6.14-mm2/ donc 2.6.14)

et un coup de patch -p0 < patchfile et c'est parti :D

sous gentoo il y a un ebuild mm, peut être que les autres distrib fournissent aussi un paquet dans leur branche developpement

Lien vers le commentaire
Partager sur d’autres sites

  • 3 semaines après...

Je le réup un tout petit coup ... merci Lorinc pour ce beau boulot ! :transpi:

me suis mis à la compo la semaine dernière ... (opportunité d'avoir trouvé une chanteuse alors que je bricole à la basse avec mon pote guitariste depuis x années) et rien qu'avec hydrogen j'ai trouvé mon bonheur :) !

maintenant, à voir si je m'occupe du mixage tout seul ou bien je confie ça à un pro de ma connaissance ... on verra !

edit> LMMS a l'air de déchirer, on va comparer à Storm et je vous tiens au jus. Merci noobietux :D

Lien vers le commentaire
Partager sur d’autres sites

  • 5 mois après...

:up:

Ayant décider d' aller jouer la sérénade sous le balcon de Scaramouche,

me suis préparé à la musique avec ordinateur, pour accompagner ma simple bouche

parccequ' il me sera plus simple d' embarquer un ordi portable plutôt qu' un piano! :yes:

de plus je suis un peu flemmard, et oui les petiots ! :oops:

pour respecter le slogan de ce forum,

me suis dit que j' allais partager avec vous mon écrit, cette tite pomme

http://www.linuxmao.org/tikiwiki/tiki-inde...p?page=Mandriva :eeek2:

tiens lorinc, ça pourrait complêter niveau liens ^^

bon, c'est la page mandriva ( :love: ) (la plus belle :p) mais y'a tout le site que j'ai pas vu de linké en première page :yes:

Lien vers le commentaire
Partager sur d’autres sites

  • 1 an après...

Super sujet, je le relirai attentivement quand j'aurais le temps.

Une remarque cependant. Il faudrait mettre à jour au moins les liens sur les distros audio pro.

-Agnula: pas de développement depuis un bail. Le principal développeur travaille maintenant sur 64 studio

Autres audio pro distros:

-Dynebolic, la distribution pour média activistes. Un live CD qui contient tout ce qu'il faut pour, par exemple, retransmettre en direct un évènement sur internet depuis son portable.

-Le jacklab, rajoute à suse des fonctions plus ou moins équivalentes à Agnula (pas testé)

Le meilleur pour la fin (Je dis ça, mais 64studio est super aussi):

-Proaudio overlay L'overlay pro-audio de gentoo. Vous ne rêvez pas, cet overlay rajoute à portage tout ce qu'il faut pour transformer votre boite gentoo en une station de travail audio professionnelle. Overlay très dynamique, si votre programme favori n'y figure pas encore, une demande polie sur la liste d'email de l'overlay suffit généralement pour qu'il soit inclut dans le heures/jours qui suivent.

Lien vers le commentaire
Partager sur d’autres sites

Autre remarque, le tuteur sur la compilation du kernel est bien, mais il ne dit rien sur la compilation d'un kernel temps réel. Un excellent tuteur se trouve sur le site français Linux MAO: Compiler un noyau temps réel.

Il faut aussi voir que disposer d'un noyau temps réel est une chose, mais qu'il faut aussi configurer le système pour qu'il fasse le meilleur usage possible de ces possibilités. Le truc consiste à assigner une priorité plus élevée à la carte son qu'aux autres composants de l'ordinateur, et aussi à utiliser une priorité plus élevée pour les applications audio. Cela peut être réalisé de plusieurs façon: avec le module realtime-lsm (realcap dans les derniers kernel). avec pam-rlimits ou avec set-rlimit.

Une seule méthode doit être choisie. Voir L'accès temps réel pour les applications

Du premier tuteur, on voit que les patches de référence pour un kernel multimédia sont ceux d'Ingo Molnar. Comme exemple de résultat, il est possible d'obtenir une latence de 1,2 msec avec une soundblaster live, voir inférieur à la msec (lire /usr/src/linux/Documentation/sound/alsa/emu10k1-jack.txt pour savoir comment). Pour un usage sérieux, un pc puissant est nécessaire, car les programmes n'ont à disposition pour faire ce qu'ils ont à faire sur le son que le temps laissé par cette latence. Plus la latence est faible, plus le pc va ramer et le taux processeur augmenter. Ceci implique qu'un pc donné peut fonctionner très bien avec une latence faible quand on ne fait qu'écouter sa musique préférée, mais qu'après avoir lancé ardour, des plugins ladspa, des vst et quelques synthés logiciels, le son est inécoutable. Il faut alors augmenter la latence pour laisser au processeur le temps nécessaire à faire son travail, ou acheter un pc plus puissant.

Lien vers le commentaire
Partager sur d’autres sites

Il a été fait une remarque sur la stabilité des patches d'Ingo Molnar. Il faut voir deux choses:

- Ceux-ci sont bien testés mais comme leur développement est très rapide, il faut toujours choisir le dernier correspondant au kernel que l'on veut patcher et il ne faut pas patcher le kernel du jour. Par exemple, sur http://www.kernel.org/pub/linux/kernel/projects/rt/ on ne voit que des patches pour du 2.6.23. Le 2.6.23 est aujourd'hui en plein développement et il n'est pas encore stable. Ce n'est pas en le patchant avec des patches temps-réel que nous allons augmenter sa stabilité.

Donc, rendez-vous sur http://www.kernel.org/pub/linux/kernel/projects/rt/older/ et téléchargez patch-2.6.22.1-rt9 pour patcher un kernel 2.6.22.

Ou utiliser une distribution audio. Celles-ci ont choisi des versions de kernel réputées pour leurs performances et leur stabilité. L'overlay audiopro de gentoo propose plusieurs kernel temps réels, Un seul est marqué stable, les autres sont marqués testing. Cela implique que pour des performances live, il est impératif de choisir le kernel marqué stable même si ce n'est pas le plus récent.

- Le hardware: la raison principale d'un manque de stabilité avec les kernels temps réel est que ceux-ci sont très agressifs avec la gestion des IRQs. Un pc qui fonctionne très bien avec un kernel "standard" peut se révéler instable avec un kernel temps réel. La cause est presque toujours des IRQs mal partagées.

Un kernel temps réel assigne une plus haute priorité à la carte son. Il utilise pour ce faire l'IRQ de cette carte. Mais si cette carte partage son IRQ avec un autre hardware, le résultat est toujours le même: plantée du système! :ouioui:

Pour y remédier, lire /proc/interrupts:

# cat /proc/interrupts

	   CPU0	   
 0:	5971088	XT-PIC-XT		timer
 1:	  12832	XT-PIC-XT		i8042
 2:		  0	XT-PIC-XT		cascade
 3:	  18674	XT-PIC-XT		ohci1394, eth0
 4:	8761348	XT-PIC-XT		EMU10K1
 5:	 126408	XT-PIC-XT		ohci_hcd:usb1
 6:		 94	XT-PIC-XT		ohci_hcd:usb2
 7:		  1	XT-PIC-XT		parport0
 8:		  2	XT-PIC-XT		rtc
 9:	3929837	XT-PIC-XT		acpi, ohci_hcd:usb3, ehci_hcd:usb4
10:		  4	XT-PIC-XT		bttv0
11:	 522548	XT-PIC-XT		nvidia
12:		  4	XT-PIC-XT		i8042
14:	 512137	XT-PIC-XT		ide0
15:	  71085	XT-PIC-XT		ide1
NMI:   33858307 
LOC:	5971177 
ERR:		  0
MIS:		  0

Le plus important est que la carte son soit seule sur son IRQ. Pour assigner les IRQ, il faut voir si le bios permet de le faire. Autrement ou si cela ne suffit pas, il faut ouvrir le pc et changer les cartes de place. Dans certains cas comme le mien, il est même nécessaire de démarrer le système avec le paramètre de boot "noapic". De toute façon, l'apic est du bricolage rajouté sur le pic, et un pc stable au niveau pic fonctionnera à merveille, alors qu'il pourra réserver des mauvaises surprises au niveau apic s'il n'est pas stable au niveau pic. (Noter que la plupart des portables ne fonctionnent tout simplement pas ou mal sans l'apic, de même que les PC avec plusieurs processeurs ou coeurs) Voir Hardware stabilty guide part 2.

En conclusion, ne vous plaignez pas que votre système temps réel plante si vous avez des IRQs partagées, c'est normal.

Lien vers le commentaire
Partager sur d’autres sites

C'edst vrai que j'ai pas trop le temps de le mettre à jour.

Pour cette histoire de noyau temps réel, disons que ça devient une nécéssitée à partir d'une certaine complexité dans le travail à effectuer. S'il s'agit d'un projet < 8 pistes, le noyau vanilla s'en sport très honorablement avec des latences tout à fait acceptables (~10-20ms sur ma machine, un vieil athlon 2400+), par contre, si le projet est plus gros, il peut être nécéssaire de s'y atteler.

Vu la polémique qui fait rage en ce moment sur la LKML autour du prochain scheduler du noyau (SD, CFS, RFS ?) et les performances qui sont attendues ainsi que les archi multicore qui se développent de plus en plus, cela risque encore de changer l'utiliter des patchs RT pour l'audio. :resolu:

Lien vers le commentaire
Partager sur d’autres sites

  • 1 an après...
  • 1 mois après...
  • 1 mois après...

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.


×
×
  • Créer...