Como interpretar o rastreio do evento cpu_idle e cpu_frequency logado pelo ftrace?

2

Eu usei o ftrace para rastrear dois eventos, cpu_frequency e cpu_idle. Não consigo descobrir qualquer documentação que indique como interpretar essa informação. Eu forneci dois trechos do arquivo de rastreamento gerado abaixo, e preciso entender como interpretar cpu_frequency & cpu_idle rastreou informações de eventos. Eu escrevi minha confusão abaixo, por favor responda a pergunta e forneça suas próprias idéias.

PARA CPU_Frequency:
1. Qual é o formato do timestamp?
2. Por que existem dois eventos para cada novo ponto de freqüência de operação, cada evento significa que a CPU começou a operar naquela freqüência ou são esses pares de entrada / saída?

Saída de rastreamento:

# tracer: nop
#
# entries-in-buffer/entries-written: 36062/36062   #P:1  
#  
#                              _-----=> irqs-off
#                             / _----=> need-resched
#                            | / _---=> hardirq/softirq
#                            || / _--=> preempt-depth
#                            ||| /     delay
#           TASK-PID   CPU#  ||||    TIMESTAMP  FUNCTION
#              | |       |   ||||       |         |
kworker/0:1H-27    [000] ...1  1130.362603: cpu_frequency: state=1190400 cpu_id=0
kworker/0:1H-27    [000] ...1  1130.362609: cpu_frequency: state=1190400 cpu_id=0
kworker/0:1H-27    [000] ...1  1130.411934: cpu_frequency: state=300000 cpu_id=0
kworker/0:1H-27    [000] ...1  1130.411947: cpu_frequency: state=300000 cpu_id=0
kworker/0:1H-27    [000] ...1  1131.532595: cpu_frequency: state=1190400 cpu_id=0
kworker/0:1H-27    [000] ...1  1131.532599: cpu_frequency: state=1190400 cpu_id=0
kworker/0:1H-27    [000] ...1  1131.581758: cpu_frequency: state=300000 cpu_id=0
kworker/0:1H-27    [000] ...1  1131.581768: cpu_frequency: state=300000 cpu_id=0

PARA CPU_Idle:
1. O que significa o estado = 4294967295 aqui, que estado cpu_idle é?
2. Onde posso obter a documentação / informação sobre o que estes estados realmente significam?

 <idle>-0     [000] d..2  1960.307101: cpu_idle: state=3 cpu_id=0
 <idle>-0     [000] ...2  1960.310722: cpu_idle: state=4294967295 cpu_id=0
 <idle>-0     [000] d..2  1960.310741: cpu_idle: state=3 cpu_id=0
 <idle>-0     [000] ...2  1960.312114: cpu_idle: state=4294967295 cpu_id=0
 <idle>-0     [000] d..2  1960.312131: cpu_idle: state=3 cpu_id=0
 <idle>-0     [000] .N.2  1960.314410: cpu_idle: state=4294967295 cpu_id=0
 <idle>-0     [000] d..2  1960.314980: cpu_idle: state=3 cpu_id=0
 <idle>-0     [000] .N.2  1960.316077: cpu_idle: state=4294967295 cpu_id=0
 <idle>-0     [000] d..2  1960.316539: cpu_idle: state=3 cpu_id=0

obrigado.

    
por Zohaib Hassan 16.05.2014 / 15:08

1 resposta

0

Para CPU_Frequency:

  1. O formato do registro de data e hora é "secs.usecs". Você pode encontrar mais informações sobre isso na documentação do ftrace: link
  2. Acho que mostra o atraso de transição entre frequências.

Para CPU_Idle:

  1. '4294967295' significa uma saída do estado atual.
  2. A documentação pode ser encontrada aqui: link
por 20.05.2016 / 20:07