-
Notifications
You must be signed in to change notification settings - Fork 1
/
emu_environment.h
56 lines (37 loc) · 918 Bytes
/
emu_environment.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
/*
* Created on: May 13, 2019
* Author: Subhadeep
*/
#ifndef EMU_ENVIRONMENT_H_
#define EMU_ENVIRONMENT_H_
#include <iostream>
using namespace std;
class EmuEnv
{
private:
EmuEnv();
static EmuEnv *instance;
public:
static EmuEnv* getInstance();
int size_ratio; // T
int buffer_size_in_pages; // P
int entries_per_page; // B
int entry_size; // E
long buffer_size; // M = P*B*E ; in Bytes
int delete_tile_size_in_pages; // h
long file_size; // B/s ; in Bytes
int correlation; // c
float buffer_flush_threshold;
float disk_run_flush_threshold;
long long num_inserts;
int verbosity;
int lethe_new; // 0 for classical lethe, 1 for new lethe
int srd_count;
int epq_count;
int pq_count;
int srq_count;
int level_count;
int variable_delete_tile_size_in_pages[20] = {-1, 1, 2, 3, 4, 5};
int getDeleteTileSize(int level);
};
#endif /*EMU_ENVIRONMENT_H_*/