05.07  
Inicio
Principal
Inicio
Noticias
Artigos
Regras da Lista
Assinar a Lista
Histórico da Lista
Galeria de Imagens
Contador Usuários FUG
FUGs Estaduais
Downloads
Enquetes
FAQ
Resumo do Site
Links
Pesquisar
Contato
Sobre a FUG-BR
RSS
-
DOC-BR (FUG BR)
Introdução
Projeto DOC-BR
Handbook
FAQ Oficial
-
+ Noticias
Alertas de Seguranca
Alertas em Ports
BSD em Geral
DaemonNews (Ingles)
MyFreeBSD
Todas Categorias
-
Login
Nome de Usuário

Senha

Lembrar login
Esqueceu sua senha?
Sem conta? Crie uma


Google financia melhorias no hwpmc(4) do FreeBSD. PDF Imprimir E-mail
Por Redação FBSDBR.   
16/10/2007

 O hwpmc(4) existe no FreeBSD desde o início do ramo RELENG_6, e portanto está longe de ser uma novidade no sistema. Mas é pouco conhecido, e normalmente utilizado apenas por desenvolvedores ou administradores de sistema com conhecimento mais avançado, tal qual ktrace por exemplo. O que o hwpmc(4) faz é virtualizar os PMCs (Contadores de Medidas de Performance), recurso disponível praticamente em todos os processadores modernos, que mede informações de baixo nível em eventos de hardware como perda de cache de CPU, perda de TLB e antecipação errônea de ramificação de instruções.

Podendo virtualizar esses contadores, diversos processos podem, simultaneamente, utilizá-los, de forma concorrente. Com isso é possível obter modelos e profiling dessas informações, inclusive em operações em múltiplas CPU. Com isso pode-se rastrear todos os eventos de hardware que aconteçam, e comparar com os eventos que acontecem normalmente e poder identificar por exemplo, atividades incomuns.

Tudo bom, tudo muito bonito, mas qual a novidade? A divisão de código aberto do Google financiou o desenvolvimento de um novo recurso complementar no hwpmc(4) do FreeBSD, e a reimplementação parcial do recurso, que portanto, será no FreeBSD RELENG_7 diferente, internamente, do que temos até agora.

O novo, e a partir de agora principal recurso do hwpmc(4) é que o monitoramente das atividades não é mais passivo. Foi adicionado um recurso que permite a captura de chamadas realizadas pelas aplicações que disparam os eventos físicos na CPU, oferecendo mais informações e melhorando a percepção do comportamento do sistema. Resumidamente, agora é possível saber exatamente em que momento, no código da aplicação, os recursos de CPU são disparados, e fazer o profiling de que chamadas, em que laços do código ou sob que circunstâncias as atividades de CPU (notávelmente as incomuns) tornam-se mais ativas e presentes.

Esses "momentos" no código, são classificados de hot locations. Permitem aos desenvolvedores e administradores avançados de sistema identificar o motivo, com precisão, do consumo de recurso de CPU e principalmente comparar em tabelas de profiling as chamadas e trechos que, ao ser ativados, disparam a maior parte das instruções, oferecendo portanto estatística, complementarmente.

De acordo com Kris Kennaway, desenvolvedor FreeBSD, "hwpmc é uma das nossas ferramentas mais poderosas para medir e entender performance de CPU no FreeBSD. Suportar profiling de chamadas era um recurso importante que nãodispunhamos, e que agora simplifica a habilitado dos desenvolvedores em analizar gargalos de performance no kernel, em código de aplicações de nível de usário, e principalmente de entender seus motivos. Essas adições foram valiosas no ciclo de desenvolvimento do FreeBSD 7."

O desenvolvedor Kip Macy destaca que os novos recursos do hwpmc(4) foram de valor inestimável para o tuning do suporte FreeBSD a ambiente de 10Gbit/s - um dos projetos de destaque na lista da FreeBSD Foundation.

Você pode ler mais sobre as melhorias no hwpmc(4) no FreeBSD, nessa entrada do Google Code Blog, e também no breve relatório da Fundação FreeBSD , além do Wiki do Projeto.

Comentários


Comente!*
Nome:
E-mail
Homepage
Título:
Comentário:

Código:* Code

Última Atualização ( 16/10/2007 )
 
< Anterior   Próximo >
FUG-BR - Espalhando BSD
Dicas Rápidas:

Cansado de nao usar sua tecla DELETE pra nada, e apenas o BACKSPACE apagar caracteres, e pra tras? Ative a tecla DELETE apagando o caracter onde esta o cursor, assim: 

bindkey "\e[3~" delete-char

Para automatizar, adicione ao seu ~/.cshrc

 




Wallpapers
FreeBSD Security Advisories
  • FreeBSD-SA-08:05.openssh
  • FreeBSD-SA-08:04.ipsec
  • FreeBSD-SA-08:03.sendfile
  • FreeBSD-SA-08:02.libc
  • FreeBSD-SA-08:01.pty
  • FreeBSD-SA-07:10.gtar
  • FreeBSD-SA-07:09.random
  • FreeBSD-SA-07:08.openssl
  • FreeBSD-SA-07:07.bind

  • Online:
    Nós temos 19 visitantes online


    Devil Store - Sua loja BSD
    FreeBSD Brasil LTDA

    FUG-BR: Desde 1999, espalhando BSD pelo Brasil.