Pular para conteúdo

Setup 04: Profiling de Desempenho e Medição de Tempo ⚡

Como medir experimentalmente o tempo de execução de algoritmos para comprovar curvas Big-O.


1. Utilizando a Biblioteca <time.h> em C

#include <stdio.h>
#include <time.h>

void medir_tempo_execucao(void (*algoritmo)(void)) {
    clock_t inicio = clock();
    algoritmo();
    clock_t fim = clock();
    double tempo_gasto = (double)(fim - inicio) / CLOCKS_PER_SEC;
    printf("Tempo de Execução: %f segundos\n", tempo_gasto);
}

2. Ferramenta GNU Gprof

Para mapear funções que mais consom ciclos de CPU:

gcc -pg main.c -o app_profile
./app_profile
gprof app_profile gmon.out > analise_desempenho.txt