VM: all the started_<blah>() replaced with reset_timer()
parent
82e2de5e12
commit
58ad5fb4ce
|
@ -32,13 +32,13 @@ void factor_vm::collect_aging() {
|
||||||
gc_event* event = current_gc->event;
|
gc_event* event = current_gc->event;
|
||||||
|
|
||||||
if (event)
|
if (event)
|
||||||
event->started_card_scan();
|
event->reset_timer();
|
||||||
collector.trace_cards(data->tenured, card_points_to_aging, 0xff);
|
collector.trace_cards(data->tenured, card_points_to_aging, 0xff);
|
||||||
if (event)
|
if (event)
|
||||||
event->ended_card_scan(collector.cards_scanned, collector.decks_scanned);
|
event->ended_card_scan(collector.cards_scanned, collector.decks_scanned);
|
||||||
|
|
||||||
if (event)
|
if (event)
|
||||||
event->started_code_scan();
|
event->reset_timer();
|
||||||
collector.trace_code_heap_roots(&code->points_to_aging);
|
collector.trace_code_heap_roots(&code->points_to_aging);
|
||||||
if (event)
|
if (event)
|
||||||
event->ended_code_scan(code->points_to_aging.size());
|
event->ended_code_scan(code->points_to_aging.size());
|
||||||
|
|
|
@ -83,7 +83,7 @@ void factor_vm::collect_compact_impl() {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (event)
|
if (event)
|
||||||
event->started_compaction();
|
event->reset_timer();
|
||||||
|
|
||||||
tenured_space* tenured = data->tenured;
|
tenured_space* tenured = data->tenured;
|
||||||
mark_bits* data_forwarding_map = &tenured->state;
|
mark_bits* data_forwarding_map = &tenured->state;
|
||||||
|
|
|
@ -67,7 +67,7 @@ void factor_vm::collect_sweep_impl() {
|
||||||
gc_event* event = current_gc->event;
|
gc_event* event = current_gc->event;
|
||||||
|
|
||||||
if (event)
|
if (event)
|
||||||
event->started_data_sweep();
|
event->reset_timer();
|
||||||
data->tenured->sweep();
|
data->tenured->sweep();
|
||||||
if (event)
|
if (event)
|
||||||
event->ended_data_sweep();
|
event->ended_data_sweep();
|
||||||
|
@ -75,7 +75,7 @@ void factor_vm::collect_sweep_impl() {
|
||||||
update_code_roots_for_sweep();
|
update_code_roots_for_sweep();
|
||||||
|
|
||||||
if (event)
|
if (event)
|
||||||
event->started_code_sweep();
|
event->reset_timer();
|
||||||
code->sweep();
|
code->sweep();
|
||||||
if (event)
|
if (event)
|
||||||
event->ended_code_sweep();
|
event->ended_code_sweep();
|
||||||
|
|
10
vm/gc.cpp
10
vm/gc.cpp
|
@ -18,7 +18,7 @@ gc_event::gc_event(gc_op op, factor_vm* parent)
|
||||||
start_time = nano_count();
|
start_time = nano_count();
|
||||||
}
|
}
|
||||||
|
|
||||||
void gc_event::started_card_scan() { temp_time = nano_count(); }
|
void gc_event::reset_timer() { temp_time = nano_count(); }
|
||||||
|
|
||||||
void gc_event::ended_card_scan(cell cards_scanned_, cell decks_scanned_) {
|
void gc_event::ended_card_scan(cell cards_scanned_, cell decks_scanned_) {
|
||||||
cards_scanned += cards_scanned_;
|
cards_scanned += cards_scanned_;
|
||||||
|
@ -26,27 +26,19 @@ void gc_event::ended_card_scan(cell cards_scanned_, cell decks_scanned_) {
|
||||||
card_scan_time = (cell)(nano_count() - temp_time);
|
card_scan_time = (cell)(nano_count() - temp_time);
|
||||||
}
|
}
|
||||||
|
|
||||||
void gc_event::started_code_scan() { temp_time = nano_count(); }
|
|
||||||
|
|
||||||
void gc_event::ended_code_scan(cell code_blocks_scanned_) {
|
void gc_event::ended_code_scan(cell code_blocks_scanned_) {
|
||||||
code_blocks_scanned += code_blocks_scanned_;
|
code_blocks_scanned += code_blocks_scanned_;
|
||||||
code_scan_time = (cell)(nano_count() - temp_time);
|
code_scan_time = (cell)(nano_count() - temp_time);
|
||||||
}
|
}
|
||||||
|
|
||||||
void gc_event::started_data_sweep() { temp_time = nano_count(); }
|
|
||||||
|
|
||||||
void gc_event::ended_data_sweep() {
|
void gc_event::ended_data_sweep() {
|
||||||
data_sweep_time = (cell)(nano_count() - temp_time);
|
data_sweep_time = (cell)(nano_count() - temp_time);
|
||||||
}
|
}
|
||||||
|
|
||||||
void gc_event::started_code_sweep() { temp_time = nano_count(); }
|
|
||||||
|
|
||||||
void gc_event::ended_code_sweep() {
|
void gc_event::ended_code_sweep() {
|
||||||
code_sweep_time = (cell)(nano_count() - temp_time);
|
code_sweep_time = (cell)(nano_count() - temp_time);
|
||||||
}
|
}
|
||||||
|
|
||||||
void gc_event::started_compaction() { temp_time = nano_count(); }
|
|
||||||
|
|
||||||
void gc_event::ended_compaction() {
|
void gc_event::ended_compaction() {
|
||||||
compaction_time = (cell)(nano_count() - temp_time);
|
compaction_time = (cell)(nano_count() - temp_time);
|
||||||
}
|
}
|
||||||
|
|
|
@ -28,15 +28,11 @@ struct gc_event {
|
||||||
uint64_t temp_time;
|
uint64_t temp_time;
|
||||||
|
|
||||||
gc_event(gc_op op, factor_vm* parent);
|
gc_event(gc_op op, factor_vm* parent);
|
||||||
void started_card_scan();
|
void reset_timer();
|
||||||
void ended_card_scan(cell cards_scanned_, cell decks_scanned_);
|
void ended_card_scan(cell cards_scanned_, cell decks_scanned_);
|
||||||
void started_code_scan();
|
|
||||||
void ended_code_scan(cell code_blocks_scanned_);
|
void ended_code_scan(cell code_blocks_scanned_);
|
||||||
void started_data_sweep();
|
|
||||||
void ended_data_sweep();
|
void ended_data_sweep();
|
||||||
void started_code_sweep();
|
|
||||||
void ended_code_sweep();
|
void ended_code_sweep();
|
||||||
void started_compaction();
|
|
||||||
void ended_compaction();
|
void ended_compaction();
|
||||||
void ended_gc(factor_vm* parent);
|
void ended_gc(factor_vm* parent);
|
||||||
};
|
};
|
||||||
|
|
|
@ -28,7 +28,7 @@ void factor_vm::collect_nursery() {
|
||||||
gc_event* event = current_gc->event;
|
gc_event* event = current_gc->event;
|
||||||
|
|
||||||
if (event)
|
if (event)
|
||||||
event->started_card_scan();
|
event->reset_timer();
|
||||||
collector.trace_cards(data->tenured, card_points_to_nursery,
|
collector.trace_cards(data->tenured, card_points_to_nursery,
|
||||||
card_points_to_nursery);
|
card_points_to_nursery);
|
||||||
collector.trace_cards(data->aging, card_points_to_nursery, 0xff);
|
collector.trace_cards(data->aging, card_points_to_nursery, 0xff);
|
||||||
|
@ -37,7 +37,7 @@ void factor_vm::collect_nursery() {
|
||||||
event->ended_card_scan(collector.cards_scanned, collector.decks_scanned);
|
event->ended_card_scan(collector.cards_scanned, collector.decks_scanned);
|
||||||
|
|
||||||
if (event)
|
if (event)
|
||||||
event->started_code_scan();
|
event->reset_timer();
|
||||||
collector.trace_code_heap_roots(&code->points_to_nursery);
|
collector.trace_code_heap_roots(&code->points_to_nursery);
|
||||||
if (event)
|
if (event)
|
||||||
event->ended_code_scan(code->points_to_nursery.size());
|
event->ended_code_scan(code->points_to_nursery.size());
|
||||||
|
|
|
@ -14,13 +14,13 @@ void factor_vm::collect_to_tenured() {
|
||||||
gc_event* event = current_gc->event;
|
gc_event* event = current_gc->event;
|
||||||
|
|
||||||
if (event)
|
if (event)
|
||||||
event->started_card_scan();
|
event->reset_timer();
|
||||||
collector.trace_cards(data->tenured, card_points_to_aging, 0xff);
|
collector.trace_cards(data->tenured, card_points_to_aging, 0xff);
|
||||||
if (event)
|
if (event)
|
||||||
event->ended_card_scan(collector.cards_scanned, collector.decks_scanned);
|
event->ended_card_scan(collector.cards_scanned, collector.decks_scanned);
|
||||||
|
|
||||||
if (event)
|
if (event)
|
||||||
event->started_code_scan();
|
event->reset_timer();
|
||||||
collector.trace_code_heap_roots(&code->points_to_aging);
|
collector.trace_code_heap_roots(&code->points_to_aging);
|
||||||
if (event)
|
if (event)
|
||||||
event->ended_code_scan(code->points_to_aging.size());
|
event->ended_code_scan(code->points_to_aging.size());
|
||||||
|
|
Loading…
Reference in New Issue