Como ajustar a prioridade de IRQ no Ubuntu 12.04?

1

A pergunta diz tudo. Eu vejo alguns tutoriais online para edições anteriores do Ubuntu, mas estou tendo dificuldades para o 12.04.

    
por Paul 08.12.2012 / 16:36

2 respostas

1

Perguntas como essa são muito importantes ao executar aplicativos de áudio profissionais. Como você vê, e como eu já experimentei muitas vezes no passado, o Askubuntu.com tem a tendência de nos dizer que não precisamos de uma resposta para esses tipos de perguntas. Para essas perguntas restritas, você encontrará ajuda mais amigável em lugares como o fórum LinuxMusicians ou o canal IRC do OpenSourceMusicians (# opensourcemusicians).

Eu corro o KX Studio (que é uma distribuição de áudio profissional em cima do Kubuntu) e eu obtive muita ajuda nos canais de IRC #kxstudio e #ardour.

De qualquer forma, aqui está como você faz isso agora que eu descobri com a ajuda dos recursos acima.

Use esses comandos para descobrir o barramento USB e o IRQ do seu dispositivo de áudio:

  • lsusb (ou lsusb -t)
  • lspci (ou lspci -v)
  • cat / proc / interrupts

No meu caso, minha interface de áudio USB é ehci_hcd: usb2 no IRQ 23. Pode não ser fácil descobrir, mas se você cruzar as listagens acima, descobrirá qual IRQ é interessante depois de algum detetive trabalhos. Veja abaixo mais dicas.

Em seguida, instale o rtirq
Veja o Ubuntu Wiki: link

Agora edite o arquivo / etc / default / rtirq (como sudo). E procure a linha que contém RTIRQ_NAME_LIST=

Se você quiser que o IRQ 23 tenha a maior prioridade, adicione-o à frente da lista da seguinte forma:

RTIRQ_NAME_LIST="23 usb i8042 snd"

No entanto, no meu caso, prefiro usar o nome do dispositivo caso a atribuição de IRQ mude para alguma área desconhecida. Então eu especifico assim:

RTIRQ_NAME_LIST="ehci_hcd:usb2 usb i8042 snd"

Basta colocar o dispositivo (ou IRQ) na frente da lista para maior prioridade. É uma lista delimitada por espaço.

Salve o arquivo e execute:

sudo /etc/init.d/rtirq restart

Não há necessidade de reinicializar. Você verá as prioridades de IRQ listadas listadas no comando acima. Mas se você quiser vê-los novamente mais tarde, execute:

sudo /etc/init.d/rtirq status

E verifique cat /proc/interrupts , se desejar.

Algumas dicas extras, como prometido:

Usando lsusb , descobri que minha interface de áudio estava no dispositivo 003 do barramento USB 001.

Em seguida, usando lspci -v , descobri que tenho 3 controladores USB. Eu encontrei um listado assim: 00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 . Os sinalizadores listados incluíam estes: Flags: bus master, medium devsel, latency 0, IRQ 23 . Então, assumindo que eu escolhi o controlador USB correto (aquele que controla o Bus 01), esses flags me disseram que eu estou interessado no IRQ 23.

Em seguida, /proc/interrupts me disse que o IRQ 23 tem o nome do dispositivo ehci_hcd:usb2 associado a ele.

Também usei tree /sys/bus/usb/drivers/usb/ e cat /proc/asound/cards para informações de referência cruzada para escolher o controlador USB correto.

Você também pode achar útil o seguinte script Perl: realTimeConfigQuickScan.pl

    
por MountainX 10.01.2014 / 02:08
0

Normalmente, não há necessidade de ajustar a prioridade de IRQ, a menos que você tenha problemas específicos e queira aplicar opções de inicialização, como irqpoll e outras listadas na wiki do Ubuntu . É melhor deixar o kernel gerenciá-los ou procurar em sua bios por qualquer opção, pois esse será o melhor local para configuração.

No entanto, provavelmente você está se referindo ao pacote hwtools que estava disponível antes mesmo do Hardy (8.04 ) e que continha o programa irqtune ; este utilitário permite ajustar os IRQs de dispositivos seriais como modems, o que foi dito no passado para, às vezes, melhorar o desempenho. As portas seriais raramente são usadas atualmente, mas pode haver configurações no bios para ativar / desativar e ajustá-las.

No entanto, existe um programa nos repositórios chamado irqbalance , que é projetado apenas para CPUS multi-core. Há mais informações aqui, mas pode não ser apropriado para você, pois isso tem mais a ver com o balanceamento da carga do servidor.

Se você deseja listar suas portas de IRQ no Ubuntu, você pode executar cat /proc/interrupts ou instalar a próxima geração do programa procinfo e executá-la e o lsdev para obter mais informações. Aqui está uma amostra de saída de procinfo , muito reduzida, o que ajudará a identificar seus IRQs:

irq   0:         49  timer               irq  15:      30500  pata_sis         
irq   1:      18634  i8042               irq  17:      78117  firewire_ohci, ye
irq   6:          3  floppy              irq  18:         82  snd_intel8x0     
    
por user76204 09.12.2012 / 22:02