This commit is contained in:
Come THURET 2024-09-03 11:06:34 +02:00
parent 6df1303c6d
commit 0f2871ce3e

View File

@ -24,11 +24,12 @@ Each sample counts as 0.01 seconds.
0.00 0.00 0.00 2 0.00 0.00 print_student_array 0.00 0.00 0.00 2 0.00 0.00 print_student_array
0.00 0.00 0.00 1 0.00 0.00 generate_grades 0.00 0.00 0.00 1 0.00 0.00 generate_grades
0.00 0.00 0.00 1 0.00 0.00 generate_ranks 0.00 0.00 0.00 1 0.00 0.00 generate_ranks
0.00 0.00 0.00 1 0.00 0.00 sort_students 0.00 0.00 0.00 1 0.00 0.00 sort_students```
par exemple on peut voir que la fonction bubblesort a été appelée 30 fois et que la fonction find_rank_student a été appelée 25 fois. par exemple on peut voir que la fonction bubblesort a été appelée 30 fois et que la fonction find_rank_student a été appelée 25 fois.
exemple du call graph : exemple du call graph :
```
Call graph (explanation follows) Call graph (explanation follows)
@ -74,12 +75,13 @@ par exemple on peut voir que la fonction bubblesort a été appelée 30 fois, 5
la fonction find_rank_student a été appelée 25 fois par sort_students et à chaque fois elle appelle la fonction bubblesort. la fonction find_rank_student a été appelée 25 fois par sort_students et à chaque fois elle appelle la fonction bubblesort.
on a relancé le scénario en changeant les paramètres de la commande : on a relancé le scénario en changeant les paramètres de la commande :
./student_rank 1000 1000 0 ```./student_rank 1000 1000 0```
on a relancé gprof avec la commande suivante : on a relancé gprof avec la commande suivante :
gprof ./student_rank ```gprof ./student_rank```
un apperçu du résultat est donné ci-dessous : un apperçu du résultat est donné ci-dessous :
```
Flat profile: Flat profile:
Each sample counts as 0.01 seconds. Each sample counts as 0.01 seconds.
@ -92,11 +94,13 @@ Each sample counts as 0.01 seconds.
0.00 6.15 0.00 2 0.00 0.00 free_array 0.00 6.15 0.00 2 0.00 0.00 free_array
0.00 6.15 0.00 1 0.00 0.00 generate_grades 0.00 6.15 0.00 1 0.00 0.00 generate_grades
0.00 6.15 0.00 1 0.00 0.00 generate_ranks 0.00 6.15 0.00 1 0.00 0.00 generate_ranks
```
en comparaison avec le premier scénario, on peut voir que la fonction bubblesort a été appelée 1001000 fois et que la fonction find_rank_student a été appelée 1000000 fois. en comparaison avec le premier scénario, on peut voir que la fonction bubblesort a été appelée 1001000 fois et que la fonction find_rank_student a été appelée 1000000 fois.
on peut voir aussi que le programme a passé 6.15 secondes à exécuter alors que dans le premier scénario il n'a pas accumulé de temps. on peut voir aussi que le programme a passé 6.15 secondes à exécuter alors que dans le premier scénario il n'a pas accumulé de temps.
exemple du call graph : exemple du call graph :
```
Call graph (explanation follows) Call graph (explanation follows)
@ -135,4 +139,5 @@ index % time self children called name
----------------------------------------------- -----------------------------------------------
0.00 0.00 1/1 main [2] 0.00 0.00 1/1 main [2]
[8] 0.0 0.00 0.00 1 generate_ranks [8] [8] 0.0 0.00 0.00 1 generate_ranks [8]
----------------------------------------------- -----------------------------------------------
```