VM: all the started_<blah>() replaced with reset_timer()

locals-and-roots
Björn Lindqvist 2016-04-24 15:21:17 +02:00
parent 82e2de5e12
commit 58ad5fb4ce
7 changed files with 11 additions and 23 deletions

View File

@ -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());

View File

@ -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;

View File

@ -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();

View File

@ -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);
} }

View File

@ -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);
}; };

View File

@ -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());

View File

@ -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());