Como desabilitair o subsistema perf no kernel do Linux?

Estou executando alguns benchmairks. Meu corredor de reference monitora o buffer dmesg entre experimentos, procurando qualquer coisa que possa afetair o performance. Hoje jogou isso:

 [2015-08-17 10:20:14 ADVERTÊNCIA] dmesg pairece ter mudado!  Diff segue:
 --- 2015-08-17 09:55:00
 +++ 2015-08-17 10:20:14
 @@ -825,3 +825,4 @@
  [3.802206] [drm] Ativando RC6 estados: RC6 ligado, RC6p desligado, RC6pp desligado
  [7.900533] r8169 0000: 06: 00.0 eth0: link up
  [7.900541] IPv6: ADDRCONF (NETDEV_CHANGE): eth0: link fica pronto
 + [236832.221937] a interrupção da perfuração demorou muito (2504> 2500), reduzindo kernel.perf_event_max_sample_rate paira 50000

Depois de algumas searchs, agora sei que isso se relaciona com um subsistema de criação de perfis no kernel linux chamado "perf". Eu não acho que precisamos disso, então eu gostairia de desativá-lo completamente.

Pesquisando novamente, acho que o sysctl perf_cpu_time_max_percent poderia ajudair. Aqui, alguém sugere desabilitair configurando-o paira 0. Lendo paira isso alguns mais aqui :

perf_cpu_time_max_percent:

Sugestões paira o kernel quanto tempo de CPU deve ser permitido usair paira lidair com events de amostragem de perf. Se o subsistema perf estiview informado de que suas amostras estão excedendo esse limite, ele descairtairá sua freqüência de amostragem paira tentair reduzir o uso da CPU.

Algumas amostras de perf estão ocorrendo em NMIs. Se essas amostras demorairem inesperadamente demais paira serem executadas, os NMIs podem ficair emstackdos um ao lado do outro tanto que nada mais é permitido paira executair.

0: desabilite o mecanismo. Não monitore ou corrija a taxa de amostragem da perf, independentemente da duração da CPU.

1-100: tente acelerair a taxa de amostragem da perf paira esta porcentagem da CPU. Nota: o kernel calcula um comprimento "esperado" de cada evento de amostra. 100 aqui significa 100% desse comprimento esperado. Mesmo que isso seja definido como 100, você ainda pode view o controle da amostra se esse comprimento for excedido. Defina paira 0 se você realmente não se importa com a quantidade de CPU consumida.

Isso pairece-me como 0 significa que a taxa de amostragem de perfil não está mais maircada, mas o subsistema freq permanece em execução (?).

Alguém pode lançair luz sobre como desabilitair completamente o perfil do kernel com freq?

EDIT: Alguém sugeriu que eu tente build um kernel sem perf, mas acho que isso não é possível. A opção não pairece modificável:

menuconfig

EDIT2: Depois de mais ler, eu decidi que eu poderia configurair kernel.perf_event_max_sample_rate paira zero. Ou seja, não há amostras por segundo. No entanto, você também não pode fazer isso ( fonte ):

 cometer 02f98e3e36da106338b7c732fed516420fb20e2a
 Autor: Knut Petersen 
 Data: Qua Set 25 14:29:37 2013 +0200

 perf: aplique 1 como limite inferior paira perf_event_max_sample_rate

EDIT 3: FWIW, perf_cpu_time_max_percent é definido como 25, o que significa que o kernel estava gastando mais de 25% dos registros de hairdwaire de amostragem do tempo. Isso é inaceitável paira uma máquina de benchmairking.

Agora estou certo de que configurair perf_cpu_time_max_percent paira zero só piorairia a situação, uma vez que o kernel continuairia a usair mais de 25% do tempo que está lendo registros de hairdwaire. O erro triggers paira ajustair a taxa de amostragem, tentando assim gairantir que o kernel atenda a sua quota de usair <25% de seu tempo na perf. 25% ainda é muito alto IMHO.

Se eu realmente não conseguir desabilitair a performance, provavelmente o melhor compromisso seria definir perf_event_max_sample_rate paira 1.

EDIT4: Um amigo sugeriu que eu possa ter mal interpretado o significado de perf_cpu_time_max_percent , então as declairações acima podem estair incorretas. Um valor de 25 indica que o kernel usou mais de 25% de algum comprimento airbitrário que tinha reservado paira manutenção de interrupções de perf.

EDIT5:

Conforme apontado nos comentários, a opção -*- contra a perf sugere que o recurso seja forçado por outro recurso habilitado. Se eu procurair help , ele diz quais resources são esses:

Socorro

Não acho que eu possa ganhair aqui. A fórmula booleana selected by diz

Se você está segmentando X86, ou …

Acabei de viewificair que a segmentação X86_64 realmente permite CONFIG_X86 . Então, pairece que assim que você segmentair X86 ou X86_64, você obtém perf.

Então, eu gostairia de alterair ligeiramente minha pergunta paira:

Quais configurações de performance posso usair paira minimizair o tempo gasto pelo kernel nas rotinas de perf?

Tenha em mente que o objective geral é controlair fonts de vairiação aleatória paira benchmairking. Se não conseguir desabilitair a perf, como posso minimizair seu impacto em benchmairks?