Linux: Desabilitando a Coalescência de Interrupção para o dispositivo NVMe

1

Eu estou olhando para testar um dispositivo NVMe com interrupção de coalescência ativado e desativado.

parâmetros de coalescência de interrupção definidos pelo protocolo NVMe que podem ser passados para o dispositivo, e no BSD livre o módulo nvme possui estes parâmetros para configurar:

 dev.nvme.0.int_coal_time
     (R/W) Interrupt coalescing timer period in microseconds.  Set to
     0 to disable.

 dev.nvme.0.int_coal_threshold
     (R/W) Interrupt coalescing threshold in number of command comple-
     tions.  Set to 0 to disable.

Com o linux, parece que não consigo ver nada de muito sobre a interrupção de mesclagem (moderação de interrupção) fora dos adaptadores Ethernet, então estou pensando se estou procurando no lugar totalmente errado.

    
por Martin 08.05.2017 / 17:06

1 resposta

2

Olhando para a fonte do kernel Linux, não há menção a isso.

Mas você pode ler e escrever com o utilitário nvme-cli:

> nvme get-feature /dev/nvme0n1 -f 8
get-feature:0x8 (Interrupt Coalescing), Current value:00000000

e para definir:

> nvme set-feature /dev/nvme0n1 -f 8 -v 100
set-feature:08 (Interrupt Coalescing), value:0x000064

Confira a especificação NVMe para encontrar os bits reais que você precisa preencher lá, pois esses são os valores brutos e nada realmente o coloca aqui.

    
por 19.11.2017 / 14:27