Eu gostaria de usar o perf
utilitário para coletar medidas para o meu programa. Ele é executado em uma máquina de cluster compartilhada com o Debian 9, onde por padrão /proc/sys/kernel/perf_event_paranoid
é definido como 3, portanto, não me permite coletar medições. Antes de mudar, gostaria de saber quais são as implicações disso.
É apenas a segurança que permite que outros usuários criem perfis de coisas executadas por outros usos e, portanto, obtenham insights? Nós não nos importamos com isso, pois é um círculo interno de usuários de qualquer maneira. Ou talvez seja o desempenho, que afetará todos os outros também?
É apenas segurança, o desempenho não é afetado (pelo menos, quando
perf
não está em execução; e mesmo assim,perf
o impacto do 's deve ser mínimo). A alteraçãoperf_event_paranoid
não altera as características de desempenho do sistema,perf
esteja ele em execução ou não.Há uma discussão detalhada das implicações de segurança
perf
na documentação do kernel. A recomendação é configurar um grupo para usuários com acesso aperf
, e configurarperf
os recursos apropriados para esse grupo, em vez de alterarperf_event_paranoid
:e adicione-se ao
perf_users
grupo.A versão 5.8 do kernel adicionou um recurso dedicado, portanto, em vez de conceder todos
cap_sys_admin
, o último comando pode ser reduzido para