From 4b7bdc05a26e64572941917e5349051d15c2db8f Mon Sep 17 00:00:00 2001 From: leclere Date: Wed, 21 Oct 2026 12:41:22 +0200 Subject: [PATCH] modif compte_rendu.md --- banque_pg | Bin 29456 -> 29664 bytes compte_rendu.md | 25 ++++- gmon.out | Bin 6067 -> 6155 bytes gprof/3_modif_nb_clients_distincts.png | Bin 0 -> 67041 bytes profil_avant.txt | 122 ++++++++++++------------- 5 files changed, 85 insertions(+), 62 deletions(-) create mode 100644 gprof/3_modif_nb_clients_distincts.png diff --git a/banque_pg b/banque_pg index ec537813659823a013aa09ed2711cf3ae5bb51d5..f7d0032d6c84c1045e264763d7793970e3a342be 100644 GIT binary patch delta 7629 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 RwaFWc%$dwGC%-CE0{{hHaqa*B delta 7089 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 U85kIZCpQ+GGbLwC-c_sy0AL2yyZ`_I diff --git a/compte_rendu.md b/compte_rendu.md index 9a7935d..87da0f4 100644 --- a/compte_rendu.md +++ b/compte_rendu.md @@ -5,7 +5,7 @@ | Fonction | Rôle | Avant | Après | |---|---|---|---| | F1 | `trier_par_montant` — tri par montant puis par id | O(n²) | **O(n log n)** (tri fusion) | -| F2 | `nb_clients_distincts` | O(n²) | | +| F2 | `nb_clients_distincts` | O(n²) | **O(n + c)** (tableau de présence) | | F3 | `total_par_client` | O(n·c) | | | F4 | `total_par_jour` | O(n·J) | | | F5 | `meilleure_periode` | O(J³) | | @@ -43,3 +43,26 @@ L'ordre de tri est conservé (montant croissant, puis id croissant en cas d'éga | Temps total du programme | 6,83 s | 3,06 s | Le tri passe de 48 % du temps à un coût négligeable ; le temps total est divisé par plus de 2. Les fonctions les plus coûteuses sont maintenant `nb_facons_rendre` (30 %), `nb_paires_opposees` (24 %) et `rechercher_par_id` (22 %). + +### 3.2 F2 — `nb_clients_distincts` : double boucle → tableau de présence + +**Avant :** pour chaque transaction, on reparcourt toutes les transactions précédentes pour savoir si le client a déjà été vu → O(n²). + +**Après :** l'id du client sert directement d'index dans un tableau de booléens `presence` : +1. un premier parcours trouve l'id client maximal pour dimensionner le tableau ; +2. le tableau est alloué avec `calloc` (initialisé à `false`) ; +3. un second parcours marque chaque client rencontré et incrémente le compteur la première fois qu'il est vu ; +4. le tableau est libéré avec `free`. + +Chaque vérification « déjà vu ? » se fait en O(1), d'où une complexité O(n + c) (c = nombre de clients). Le résultat est identique, l'empreinte est inchangée. + +**Profil gprof après modification :** + +![Profil gprof après optimisation de F2](gprof/3_modif_nb_clients_distincts.png) + +| | Avant | Après | +|---|---|---| +| Temps de `nb_clients_distincts` | 0,11 s | 0,00 s | +| Temps total du programme | 3,06 s | 3,07 s | + +La fonction devient négligeable dans le profil. Le gain sur le temps total n'est pas visible car il est inférieur aux variations de mesure de gprof (échantillonnage à 0,01 s). Les fonctions les plus coûteuses restent `nb_facons_rendre` (28 %), `nb_paires_opposees` (26 %) et `rechercher_par_id` (25 %). diff --git a/gmon.out b/gmon.out index a75709ba11554bdeaeff8132e90df4d71ae60f29..2f9f36137a40c419590e9665c7f56e394ec4d2f3 100644 GIT binary patch literal 6155 zcmYe#&Cg?GzyUUBK_u32F)*YsFfbISCg5yDK`pvD$hIJ}(bZw{ znJ|S&5@7|aW@KPuU}a!tU|?Ve^DzlRt^(-;g%>LW69YSgET#br!eH~UNWg_4At=DW zz`z6!OJN2^1~#ZH2bgAM;Dgc#e}mLObb_R~z`7Y2SQvOfTn1(agi2fM!h^50;3^7aR@Lr2t&+xE(Dax^CnpE094Qm>P@g9 zgBnB|ieLgZ!3Ed^A7B%7P)9WrR8KP=Koh*c&cMLvpnEr2LP^eJkkIF literal 6067 zcmYe#&Cg?Gzy-7*5)E7o3@Ho@48^I*`FSbD5J3h8I0GgyN{@!XXb6mkz-S1JhQMeD zjE2By2#kinXb4a@1aLRjscX-uX#*PqOknFFvCYW9#K6SB3>G1ufS85Q&w^kQWPw~j zP!UcA5Wj$=85z)B0TQJhhS|)*z{bGFz`(#tmQ`$ESF?llGct%XfLQ1T@iD;cLYG1C z8NsfAgaH$S5Y#*d21W)J21W)}20^e=MwFOlV&H|E%)|hR1yD-hg1P~cCO}~dicJVl zl7SQKUXZyE9bjWe36v0EW#D80g%BH=X#&NtQO;-xjE2C73jxLiVThlPgUWIS1_pyt z1_s6j*aR6wP*v)KR2rZOHn1`j3{rbMx6mx2hMg-U|WRFH=V-j;*VXFq&m zXLP_OxIq!3A`?nCiZd`UZcu^<@ERegG32wk9_yL=sgBlhy7oZ99fa(_obySrX*g;W@CisGxfq^kV16Ab?ZUzR% O0!@gZHZ)p5jt2nhZ9KvN diff --git a/gprof/3_modif_nb_clients_distincts.png b/gprof/3_modif_nb_clients_distincts.png new file mode 100644 index 0000000000000000000000000000000000000000..84b9ea7c459095552a6abffcee554fb66d381e14 GIT binary patch literal 67041 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 -[1] 100.0 0.00 3.06 main [1] - 0.93 0.00 1/1 nb_facons_rendre [2] - 0.73 0.00 1/1 nb_paires_opposees [3] - 0.66 0.00 30000/30000 rechercher_par_id [4] - 0.00 0.26 6017/6017 ajouter_ligne [5] - 0.23 0.00 1/1 meilleure_periode [7] - 0.11 0.00 1/1 nb_clients_distincts [8] - 0.08 0.00 1/1 total_par_client [9] - 0.04 0.00 1/1 total_par_jour [10] - 0.01 0.00 30000/30000 categorie [11] - 0.00 0.01 1/1 trier_par_montant [13] - 0.00 0.00 1/1 generer_transactions [16] - 0.00 0.00 1/1 empreinte [15] +[1] 100.0 0.00 3.07 main [1] + 0.88 0.00 1/1 nb_facons_rendre [2] + 0.81 0.00 1/1 nb_paires_opposees [3] + 0.76 0.00 30000/30000 rechercher_par_id [4] + 0.00 0.24 6017/6017 ajouter_ligne [5] + 0.24 0.00 1/1 meilleure_periode [7] + 0.08 0.00 1/1 total_par_client [8] + 0.04 0.00 1/1 total_par_jour [9] + 0.01 0.00 30000/30000 categorie [10] + 0.00 0.01 1/1 trier_par_montant [12] + 0.00 0.00 1/1 generer_transactions [15] + 0.00 0.00 1/1 nb_clients_distincts [16] + 0.00 0.00 1/1 empreinte [14] ----------------------------------------------- 266723738 nb_facons_rendre [2] - 0.93 0.00 1/1 main [1] -[2] 30.4 0.93 0.00 1+266723738 nb_facons_rendre [2] + 0.88 0.00 1/1 main [1] +[2] 28.5 0.88 0.00 1+266723738 nb_facons_rendre [2] 266723738 nb_facons_rendre [2] ----------------------------------------------- - 0.73 0.00 1/1 main [1] -[3] 23.9 0.73 0.00 1 nb_paires_opposees [3] + 0.81 0.00 1/1 main [1] +[3] 26.4 0.81 0.00 1 nb_paires_opposees [3] ----------------------------------------------- - 0.66 0.00 30000/30000 main [1] -[4] 21.6 0.66 0.00 30000 rechercher_par_id [4] + 0.76 0.00 30000/30000 main [1] +[4] 24.8 0.76 0.00 30000 rechercher_par_id [4] ----------------------------------------------- - 0.00 0.26 6017/6017 main [1] -[5] 8.5 0.00 0.26 6017 ajouter_ligne [5] - 0.26 0.00 6017/6017 longueur [6] + 0.00 0.24 6017/6017 main [1] +[5] 7.8 0.00 0.24 6017 ajouter_ligne [5] + 0.24 0.00 6017/6017 longueur [6] ----------------------------------------------- - 0.26 0.00 6017/6017 ajouter_ligne [5] -[6] 8.5 0.26 0.00 6017 longueur [6] + 0.24 0.00 6017/6017 ajouter_ligne [5] +[6] 7.8 0.24 0.00 6017 longueur [6] ----------------------------------------------- - 0.23 0.00 1/1 main [1] -[7] 7.5 0.23 0.00 1 meilleure_periode [7] ------------------------------------------------ - 0.11 0.00 1/1 main [1] -[8] 3.6 0.11 0.00 1 nb_clients_distincts [8] + 0.24 0.00 1/1 main [1] +[7] 7.8 0.24 0.00 1 meilleure_periode [7] ----------------------------------------------- 0.08 0.00 1/1 main [1] -[9] 2.6 0.08 0.00 1 total_par_client [9] +[8] 2.6 0.08 0.00 1 total_par_client [8] ----------------------------------------------- 0.04 0.00 1/1 main [1] -[10] 1.3 0.04 0.00 1 total_par_jour [10] +[9] 1.3 0.04 0.00 1 total_par_jour [9] ----------------------------------------------- 0.01 0.00 30000/30000 main [1] -[11] 0.3 0.01 0.00 30000 categorie [11] +[10] 0.5 0.01 0.00 30000 categorie [10] ----------------------------------------------- - 0.01 0.00 29999/29999 trier_par_montant [13] -[12] 0.3 0.01 0.00 29999 fusionner [12] + 0.01 0.00 29999/29999 trier_par_montant [12] +[11] 0.3 0.01 0.00 29999 fusionner [11] ----------------------------------------------- 0.00 0.01 1/1 main [1] -[13] 0.3 0.00 0.01 1 trier_par_montant [13] - 0.01 0.00 29999/29999 fusionner [12] +[12] 0.3 0.00 0.01 1 trier_par_montant [12] + 0.01 0.00 29999/29999 fusionner [11] ----------------------------------------------- - 0.00 0.00 149998/149998 generer_transactions [16] -[14] 0.0 0.00 0.00 149998 alea [14] + 0.00 0.00 149998/149998 generer_transactions [15] +[13] 0.0 0.00 0.00 149998 alea [13] ----------------------------------------------- 0.00 0.00 1/1 main [1] -[15] 0.0 0.00 0.00 1 empreinte [15] +[14] 0.0 0.00 0.00 1 empreinte [14] ----------------------------------------------- 0.00 0.00 1/1 main [1] -[16] 0.0 0.00 0.00 1 generer_transactions [16] - 0.00 0.00 149998/149998 alea [14] +[15] 0.0 0.00 0.00 1 generer_transactions [15] + 0.00 0.00 149998/149998 alea [13] +----------------------------------------------- + 0.00 0.00 1/1 main [1] +[16] 0.0 0.00 0.00 1 nb_clients_distincts [16] ----------------------------------------------- Index by function name - [5] ajouter_ligne [16] generer_transactions [3] nb_paires_opposees - [14] alea [6] longueur [4] rechercher_par_id - [11] categorie [7] meilleure_periode [9] total_par_client - [15] empreinte [8] nb_clients_distincts [10] total_par_jour - [12] fusionner (banque.c) [2] nb_facons_rendre [13] trier_par_montant + [5] ajouter_ligne [15] generer_transactions [3] nb_paires_opposees + [13] alea [6] longueur [4] rechercher_par_id + [10] categorie [7] meilleure_periode [8] total_par_client + [14] empreinte [16] nb_clients_distincts [9] total_par_jour + [11] fusionner (banque.c) [2] nb_facons_rendre [12] trier_par_montant