void GCInit(void) { init_int(&minOffRequest, 1 * TILT_PAGESIZE); init_int(&maxOffRequest, 8 * TILT_PAGESIZE); init_int(&minOnRequest, 1 * TILT_PAGESIZE); init_int(©PageSize, TILT_PAGESIZE / 2); init_int(©CheckSize, TILT_PAGESIZE / 2); init_int(©ChunkSize, 256); minOffRequest = RoundUp(minOffRequest, TILT_PAGESIZE); minOnRequest = RoundUp(minOnRequest, TILT_PAGESIZE); reset_statistic(&minorSurvivalStatistic); reset_statistic(&heapSizeStatistic); reset_statistic(&majorSurvivalStatistic); switch (collector_type) { case Semispace: GCFun = GC_Semi; GCReleaseFun = GCRelease_Semi; GCPollFun = NULL; GCInit_Semi(); break; case Generational: GCFun = GC_Gen; GCReleaseFun = GCRelease_Gen; GCPollFun = NULL; GCInit_Gen(); break; case SemispaceParallel: GCFun = GC_SemiPara; GCReleaseFun = GCRelease_SemiPara; GCPollFun = GCPoll_SemiPara; GCInit_SemiPara(); break; case GenerationalParallel: GCFun = GC_GenPara; GCReleaseFun = GCRelease_GenPara; GCPollFun = GCPoll_GenPara; GCInit_GenPara(); break; case SemispaceConcurrent: GCFun = GC_SemiConc; GCReleaseFun = GCRelease_SemiConc; GCPollFun = GCPoll_SemiConc; GCInit_SemiConc(); break; case GenerationalConcurrent: GCFun = GC_GenConc; GCReleaseFun = GCRelease_GenConc; GCPollFun = GCPoll_GenConc; GCInit_GenConc(); break; default: DIE("bad collector type"); } if (forceMirrorArray) mirrorArray = 1; }
void Port::reset_all_statistic() { reset_statistic(); global_time = 0.0; ships_generated = 0; max_wait_time = 0.0; Ship::mean_wait_time_all_exp = 0.0; ships_after_track_impact_all_exp = 0; for(int i = 0 ; i < NUM_OF_SHIPS_TYPE; i ++) ships_generated_type[i] = 0; for(int i = 0; i < 30; i ++) ShipArrives::hist_appear_interval[i] = 0; for(int i = 0; i < 20; i ++) Tanker::hist_tanker_weight[i] = 0; }