Visite também: UnderLinux ·  Dicas-L ·  SoftwareLivre.org ·  [mais] ·  Currículo ·  Efetividade ·  makerNews ·  Arduino

BPF tem capacidades similares ao DTrace no Linux 4.9-rc1

Estas são as palavras de Brendan Gregg, renomado Engenheiro de Performance da Netflix e ávido conhecedor do DTrace do Solaris. De acordo com sua opinião e conhecimento, o merge 4.9-rc1 do kernel Linux cria capacidades similares as existentes no DTrace do Solaris. Este merge irá habilitar a análise de performance de aplicações e kernel, usando uma tecnologia de baixa latência e baixo "overhead" através de regras customizadas com contagem de frequência, histogramas e mais.

O Linux teve diversas tecnologias que miravam para o rumo da análise de performance, mas nenhuma foi adicionada a mainline do kernel. O mais curioso, é que o próprio BPF(Berkley Packet Filter) foi inicialmente definido como um software para criação de redes definidas por software, e acabou sendo ampliado para fazer tracing.

A única falha do BPF aqui é a falta de uma linguagem de alto nível para ajudar os engenheiros que trabalham nesta área. Contudo, regras podem ser criadas pelo BCC(BPF Compiler Collection), software desenvolvido por Brenden Blanco. Outro frontend para o BPF é a suite "perf".

No link de referência há imagens de como funciona o BPF, bem como exemplos dos comandos execsnoop, que mostra como um novo processo foi originado(nroff foi lançado por man, por exemplo), histogramas de latência em operações de I/O com o biolatency, operações em ext4 com duração menor a 5 milissegundos com o ext4slower, tabela de relação entre pid e conexão tcp aberta com o tcpconnect, latência em DNS(getaddrinfo() e gethostbyname() ) utilizando o comando gethostlatency e por aí vai. Vale a pena dar uma conferida.

Enviado por Nícolas Wildner (nicolasgauchoΘgmail·com)

Comentar

 
comments powered by Disqus

Comentários arquivados