Skip to content

[Portuguese] METRIC_START

Luiz Felipe edited this page Apr 8, 2020 · 1 revision
METRIC_START();
METRIC_STOP(name);

O macro METRIC_START começa um novo bloco de código para medir a performance. O METRIC_STOP marca o fim do bloco que corresponde com o METRIC_START, e imprime a informação sobre a medição. O name deve ser uma string literal, e ele é mostrado como uma identificação para o bloco.

Você pode fazer blocos de medição aninhados.

Exemplo

#include <stdio.h>
#include "metric.h"

int main(void)
{
  volatile int x = 12345;

  METRIC_START();

  for (int i = 0; i < 999999; i++)
    x ^= i;

  METRIC_STOP("xor_x_variable");
  printf("-- %d\n", x);

  return 0;
}

Saída:

<BENCH> tst.c: xor_x_variable
        5907 clocks, 0.00590500 secs
-- 1012230