O kernel do Linux é a espinha dorsal dos sistemas operacionais (SO) Linux e é a interface fundamental entre o hardware de um computador e seus processos.
Recentemente foi lançada a versão 6.2 do Linux Kernel, que vem com uma série de recursos muito bons, além de adicionar melhorias de compatibilidade de hardware e, acima de tudo, continua com as melhorias de "Rust For Linux", sem dúvida uma versão temporária que abre muitas janelas para várias melhorias para Linux 6.3 (Se você quiser saber mais sobre o lançamento do Kernel 6.2, você pode verificar os detalhes neste post).
Para aquela que será a próxima versão do Linux Kernel, estão a ser ajustadas várias funcionalidades que são realizadas através de confirmações e das quais uma das as características importantes que foi adicionado a Linux 6.3 é a nova ferramenta rtla hwnoise.
rtla hwnoise (ruído de hardware de varredura linux em tempo real) é uma ferramenta para detectar e quantificar o ruído relacionado ao hardware. Recupera o resumo periódico do rastreador osnoise em execução com as interrupções desabilitadas.
Desativando as interrupções e o agendamento de threads, apenas hardware não mascarável e ruído relacionado à interrupção são permitidos.
Segundo descrição feita pelos mantenedores da ferramenta, esta última ttambém permite configurações de rastreador de ruído e coletar a saída do plotter. Em resumo, rtla hwnoise oferece funcionalidade semelhante ao osnoise (ruído do sistema operacional) enquanto mostra apenas interrupções não mascaráveis (NMI) e ruído relacionado ao hardware.
Em princípio, o ruído de hardware deve ser zero Linux. No entanto, Acontece que nem sempre é esse o caso. Na operação do sistema operacional, pode-se enfrentar duas fontes principais de ruído.
Ruído de operações do sistema operacional e ruído relacionado ao hardware. No contexto da computação de alto desempenho (HPC), por exemplo, o ruído do sistema operacional (osnoise) refere-se à interferência sofrida por um aplicativo devido a atividades dentro do sistema operacional. No contexto do Linux, NMI, IRQ, SoftIRQ e qualquer outro encadeamento do sistema podem causar ruído no sistema. Em cujo caso,
No Linux, Embora possa haver outros Quatro contextos de execução principais podem interferir em uma carga de trabalho: interrupções não mascaráveis (NMIs), interrupções mascaráveis (IRQs), softirqs (atividades de IRQ adiadas) e threads. Além desses ruídos relacionados ao sistema, as cargas relacionadas ao hardware também podem causar ruído, por exemplo, via SMI.
É neste último caso que a ferramenta rtla hwnoise foi desenhada. Para entender melhor como funciona a ferramenta de medição e monitoramento de ruído relacionado ao hardware, é recomendável recorrer à ferramenta osnoise do Linux, pois é derivada dela.
No Linux, existem dois tipos de ferramentas para medir o ruído do sistema operacional: um baseado na carga de trabalho e outro baseado no rastreamento. As ferramentas baseadas em carga de trabalho geralmente executam microbenchmarks com uma duração conhecida e medem a diferença entre a duração planejada do microbenchmark e o tempo real necessário para processá-lo. Embora sejam bons em definir a quantidade de ruído do sistema operacional que uma carga de trabalho pode experimentar, as ferramentas baseadas em carga de trabalho não podem identificar as causas principais do ruído do sistema operacional.
Os métodos baseados em rastreamento aproveitam os recursos de rastreamento do kernel do Linux para identificar a causa do ruído do sistema operacional. No entanto, esses métodos baseados em rastreamento não levam em consideração como o ruído é percebido pelas cargas de trabalho. E é por isso que a ferramenta osnoise foi projetada. Ele aproveita ao máximo os métodos baseados em carga de trabalho e rastreamento, mostrando as causas principais do ruído do sistema operacional e levando em consideração como o ruído é percebido pela carga de trabalho.
Ao lado do osnoise, temos a ferramenta rtla osnoise, que é uma interface para o plotter osnoise. o rastreador osnoise executa um loop no kernel medindo o tempo disponível. Ele faz isso com preferência, softirq e IRQ ativados, permitindo todas as fontes de ruído durante a execução.
Com o rtla hwnoise, usuários e desenvolvedores que se importam com cada microssegundo roubado por instruções falsas enviadas pelo hardware poderão medir com precisão esses ruídos e tomar decisões de acordo, sabendo que, para operações em tempo real, cada microssegundo ganho pelo processador tem valor. .
fonte: https://git.kernel.org