# Analyseur de fréquence de mots — TD R5.A.04 Optimisation d'un analyseur C par mesure du temps, étude des profils et réduction du travail répété. Le rapport doit conserver l'empreinte **`1d53de903efd2b7c`**. ## Organisation ```text src/analyseur.c Programme principal exemples/exemple.c Exemple de profiling fourni docs/CONSIGNES.md Consignes originales du TD docs/R5A04_Profiling_MM.pdf Support du cours docs/notes.md Journal détaillé des mesures resultats/profils/ Profils historiques numérotés de 00 à 08 resultats/mesures/ Mesures brutes CSV et conditions des expériences resultats/rapport_reference.txt Rapport attendu COMPTE_RENDU.md Compte rendu noté build/ Fichiers générés localement, ignorés par Git ``` ## Compiler et vérifier GCC, GNU Make et `gprof` sont nécessaires pour les commandes de profiling. Depuis la racine du dépôt : ```bash make # Compiler en -O0, sans instrumentation make run # Exécuter ; le rapport est écrit dans build/rapport.txt make check # Exécuter et comparer le rapport à la référence make profile # Produire build/profil/profil.txt avec -pg et gprof make clean # Supprimer les fichiers générés de build/ ``` Pour mesurer le temps du programme après compilation : ```bash cd build time ./analyseur ``` Les mesures de temps utilisent le binaire sans `-pg`. Les profils archivés dans `resultats/` sont les résultats des différentes étapes ; `make profile` écrit le nouveau profil dans `build/profil/`. ## Documents et résultats - [Compte rendu](COMPTE_RENDU.md) - [Consignes du TD](docs/CONSIGNES.md) et [support PDF](docs/R5A04_Profiling_MM.pdf) - [Journal des mesures](docs/notes.md) - [Ordre des profils et expériences](resultats/README.md) - [Comparaison de la normalisation sur le même PC](resultats/mesures/comparaison_normalisation_meme_pc.csv)