//send init finish msg to core coordinator
send_msg_2(STARTUPCORE, GCFINISHPREF, BAMBOO_NUM_OF_CORE);
GC_PRINTF("Finish prefinish phase\n");
- CACHEADAPT_SAMPING_RESET();
+ CACHEADAPT_SAMPLING_RESET();
if(BAMBOO_NUM_OF_CORE < NUMCORESACTIVE) {
// zero out the gccachesamplingtbl
BAMBOO_MEMSET_WH(gccachesamplingtbl_local,0,size_cachesamplingtbl_local);
cacheAdapt_mutator();
cacheAdapt_gc(false);
GC_CHECK_ALL_CORE_STATUS();
-
- CACHEADAPT_SAMPING_RESET();
+
+ CACHEADAPT_SAMPLING_RESET();
if(BAMBOO_NUM_OF_CORE < NUMCORESACTIVE) {
// zero out the gccachesamplingtbl
BAMBOO_MEMSET_WH(gccachesamplingtbl_local,0,size_cachesamplingtbl_local);
#ifdef GC_CACHE_SAMPLING
// reset the sampling arrays
-#define CACHEADAPT_SAMPING_RESET() bamboo_dtlb_sampling_reset()
+#define CACHEADAPT_SAMPLING_RESET() bamboo_dtlb_sampling_reset()
#else // GC_CACHE_SAMPING
-#define CACHEADAPT_SAMPING_RESET()
+#define CACHEADAPT_SAMPLING_RESET()
#endif
#define CACHEADAPT_SAMPLING_DATA_REVISE_INIT(o,t) \
#if defined(GC_CACHE_ADAPT)&&defined(GC_CACHE_SAMPLING)
// disable the timer interrupt
bamboo_mask_timer_intr();
-#endif
-#if defined(GC_CACHE_ADAPT)&&defined(GC_CACHE_SAMPLING)
// get the sampling data
bamboo_output_dtlb_sampling();
#endif
// enable the timer interrupt
bamboo_tile_timer_set_next_event(GC_TILE_TIMER_EVENT_SETTING);
bamboo_unmask_timer_intr();
+ //turn on sampling again
+ bamboo_dtlb_sampling_init();
#endif
}