Skip to content

Commit 64ab537

Browse files
authored
Add GC metric last_incremental_sweep (#50190)
* Add GC metric `last_incremental_sweep` * Update gc.c * Update gc.c
1 parent feb2988 commit 64ab537

File tree

3 files changed

+5
-0
lines changed

3 files changed

+5
-0
lines changed

base/timing.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ struct GC_Num
2525
total_sweep_time ::Int64
2626
total_mark_time ::Int64
2727
last_full_sweep ::Int64
28+
last_incremental_sweep ::Int64
2829
end
2930

3031
gc_num() = ccall(:jl_gc_num, GC_Num, ())

src/gc.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3274,6 +3274,9 @@ static int _jl_gc_collect(jl_ptls_t ptls, jl_gc_collection_t collection)
32743274
if (sweep_full) {
32753275
gc_num.last_full_sweep = gc_end_time;
32763276
}
3277+
else {
3278+
gc_num.last_incremental_sweep = gc_end_time;
3279+
}
32773280

32783281
// sweeping is over
32793282
// 7. if it is a quick sweep, put back the remembered objects in queued state

src/gc.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ typedef struct {
8282
uint64_t total_sweep_time;
8383
uint64_t total_mark_time;
8484
uint64_t last_full_sweep;
85+
uint64_t last_incremental_sweep;
8586
} jl_gc_num_t;
8687

8788
// Array chunks (work items representing suffixes of

0 commit comments

Comments
 (0)