| 33 | } |
| 34 | |
| 35 | void init_obj_sel(cache_t *cache) { |
| 36 | GLCache_params_t *params = cache->eviction_params; |
| 37 | |
| 38 | params->obj_sel.array_size = params->n_merge * params->segment_size; |
| 39 | params->obj_sel.score_array = my_malloc_n(double, params->obj_sel.array_size); |
| 40 | #ifdef RANDOMIZE_MERGE |
| 41 | params->obj_sel.score_array_offset = |
| 42 | my_malloc_n(double, params->obj_sel.array_size); |
| 43 | #endif |
| 44 | params->obj_sel.dd_pair_array = |
| 45 | my_malloc_n(dd_pair_t, params->obj_sel.array_size); |
| 46 | |
| 47 | params->obj_sel.segs_to_evict = my_malloc_n(segment_t *, params->n_merge); |
| 48 | memset(params->obj_sel.segs_to_evict, 0, |
| 49 | sizeof(segment_t *) * params->n_merge); |
| 50 | } |
| 51 | |
| 52 | void init_learner(cache_t *cache) { |
| 53 | GLCache_params_t *params = cache->eviction_params; |