feat: add cache simulation with experiments for TTL and eviction strategies

Introduce a new simulation for Age of Information (AoI) cache management, focusing on varying TTL values and eviction strategies (LRU and Random Eviction). This includes:
- New Python script  for event-driven cache simulations using .
- Experiments for "No Refresh" across multiple TTL configurations (, , ..., ) with:
  - Hit rate and object age tracking (, , etc.).
  - Visualizations (e.g., , ).
- Updated  to describe experimental setup and configurations.
- Log export file () for simulation results.
- Refactor of  with detailed strategy configurations and runtime notes.

### Reason
The commit enhances the project by enabling detailed experiments with configurable cache parameters, supporting analysis of cache efficiency and AoI under varying conditions. This provides a foundation for more sophisticated simulations and insights.

### Performance
- Runtime: ~4m 29s for .

Co-authored experiments introduce structured data files and visualizations, improving clarity for future iterations.

Signed-off-by: Tuan-Dat Tran <tuan-dat.tran@tudattr.dev>
This commit is contained in:
Tuan-Dat Tran
2024-11-27 16:31:46 +01:00
parent 912b97a06e
commit 6e8a742705
38 changed files with 2337 additions and 216 deletions

View File

@@ -0,0 +1,100 @@
,access_count,hits,misses,mu,lambda,hit_rate
1,664,494,170,0,1,45.28
2,212,96,116,0,3,74.15
3,673,499,174,0,1,76.65
4,711,545,166,0,1,60.0
5,345,207,138,0,2,73.96
6,649,480,169,0,1,38.69
7,137,53,84,0,5,74.3
8,681,506,175,0,1,74.6
9,689,514,175,0,1,74.66
10,667,498,169,0,1,60.37
11,328,198,130,0,2,75.29
12,692,521,171,0,1,74.96
13,683,512,171,0,1,74.71
14,696,520,176,0,1,60.76
15,344,209,135,0,2,59.2
16,326,193,133,0,2,75.47
17,689,520,169,0,1,75.11
18,691,519,172,0,1,51.6
19,219,113,106,0,3,75.96
20,732,556,176,0,1,76.32
21,739,564,175,0,1,75.26
22,683,514,169,0,1,74.78
23,670,501,169,0,1,57.4
24,331,190,141,0,2,75.83
25,724,549,175,0,1,74.86
26,692,518,174,0,1,75.74
27,705,534,171,0,1,37.23
28,137,51,86,0,5,75.15
29,672,505,167,0,1,74.64
30,694,518,176,0,1,74.78
31,674,504,170,0,1,38.89
32,144,56,88,0,4,74.93
33,670,502,168,0,1,31.91
34,141,45,96,0,4,74.66
35,659,492,167,0,1,75.4
36,691,521,170,0,1,76.12
37,737,561,176,0,1,48.86
38,219,107,112,0,3,28.0
39,100,28,72,0,8,75.91
40,714,542,172,0,1,42.39
41,184,78,106,0,4,43.48
42,161,70,91,0,4,61.88
43,362,224,138,0,2,75.43
44,696,525,171,0,1,73.21
45,627,459,168,0,1,75.15
46,648,487,161,0,1,22.64
47,53,12,41,0,10,74.85
48,676,506,170,0,1,73.98
49,638,472,166,0,1,74.59
50,673,502,171,0,1,39.06
51,128,50,78,0,5,21.18
52,85,18,67,0,9,76.57
53,747,572,175,0,1,76.0
54,700,532,168,0,1,75.25
55,687,517,170,0,1,75.42
56,720,543,177,0,1,75.36
57,690,520,170,0,1,10.0
58,40,4,36,0,17,60.69
59,318,193,125,0,2,74.93
60,674,505,169,0,1,21.74
61,23,5,18,0,26,75.55
62,724,547,177,0,1,74.2
63,628,466,162,0,1,60.29
64,345,208,137,0,2,74.89
65,681,510,171,0,1,23.29
66,73,17,56,0,10,74.35
67,651,484,167,0,1,0.0
68,10,0,10,0,69,73.9
69,636,470,166,0,1,74.7
70,656,490,166,0,1,61.56
71,372,229,143,0,2,75.52
72,678,512,166,0,1,73.51
73,638,469,169,0,1,74.89
74,685,513,172,0,1,44.28
75,201,89,112,0,3,59.88
76,344,206,138,0,2,61.45
77,345,212,133,0,2,50.19
78,261,131,130,0,3,10.64
79,47,5,42,0,15,75.3
80,660,497,163,0,1,74.29
81,634,471,163,0,1,37.96
82,137,52,85,0,5,57.28
83,309,177,132,0,2,75.51
84,686,518,168,0,1,74.63
85,682,509,173,0,1,58.39
86,322,188,134,0,2,74.7
87,676,505,171,0,1,58.15
88,325,189,136,0,2,75.62
89,689,521,168,0,1,75.11
90,695,522,173,0,1,62.35
91,324,202,122,0,2,60.53
92,337,204,133,0,2,47.75
93,222,106,116,0,3,75.07
94,686,515,171,0,1,62.39
95,351,219,132,0,2,76.29
96,717,547,170,0,1,74.4
97,664,494,170,0,1,8.7
98,23,2,21,0,37,46.96
99,181,85,96,0,4,59.64
1 access_count hits misses mu lambda hit_rate
2 1 664 494 170 0 1 45.28
3 2 212 96 116 0 3 74.15
4 3 673 499 174 0 1 76.65
5 4 711 545 166 0 1 60.0
6 5 345 207 138 0 2 73.96
7 6 649 480 169 0 1 38.69
8 7 137 53 84 0 5 74.3
9 8 681 506 175 0 1 74.6
10 9 689 514 175 0 1 74.66
11 10 667 498 169 0 1 60.37
12 11 328 198 130 0 2 75.29
13 12 692 521 171 0 1 74.96
14 13 683 512 171 0 1 74.71
15 14 696 520 176 0 1 60.76
16 15 344 209 135 0 2 59.2
17 16 326 193 133 0 2 75.47
18 17 689 520 169 0 1 75.11
19 18 691 519 172 0 1 51.6
20 19 219 113 106 0 3 75.96
21 20 732 556 176 0 1 76.32
22 21 739 564 175 0 1 75.26
23 22 683 514 169 0 1 74.78
24 23 670 501 169 0 1 57.4
25 24 331 190 141 0 2 75.83
26 25 724 549 175 0 1 74.86
27 26 692 518 174 0 1 75.74
28 27 705 534 171 0 1 37.23
29 28 137 51 86 0 5 75.15
30 29 672 505 167 0 1 74.64
31 30 694 518 176 0 1 74.78
32 31 674 504 170 0 1 38.89
33 32 144 56 88 0 4 74.93
34 33 670 502 168 0 1 31.91
35 34 141 45 96 0 4 74.66
36 35 659 492 167 0 1 75.4
37 36 691 521 170 0 1 76.12
38 37 737 561 176 0 1 48.86
39 38 219 107 112 0 3 28.0
40 39 100 28 72 0 8 75.91
41 40 714 542 172 0 1 42.39
42 41 184 78 106 0 4 43.48
43 42 161 70 91 0 4 61.88
44 43 362 224 138 0 2 75.43
45 44 696 525 171 0 1 73.21
46 45 627 459 168 0 1 75.15
47 46 648 487 161 0 1 22.64
48 47 53 12 41 0 10 74.85
49 48 676 506 170 0 1 73.98
50 49 638 472 166 0 1 74.59
51 50 673 502 171 0 1 39.06
52 51 128 50 78 0 5 21.18
53 52 85 18 67 0 9 76.57
54 53 747 572 175 0 1 76.0
55 54 700 532 168 0 1 75.25
56 55 687 517 170 0 1 75.42
57 56 720 543 177 0 1 75.36
58 57 690 520 170 0 1 10.0
59 58 40 4 36 0 17 60.69
60 59 318 193 125 0 2 74.93
61 60 674 505 169 0 1 21.74
62 61 23 5 18 0 26 75.55
63 62 724 547 177 0 1 74.2
64 63 628 466 162 0 1 60.29
65 64 345 208 137 0 2 74.89
66 65 681 510 171 0 1 23.29
67 66 73 17 56 0 10 74.35
68 67 651 484 167 0 1 0.0
69 68 10 0 10 0 69 73.9
70 69 636 470 166 0 1 74.7
71 70 656 490 166 0 1 61.56
72 71 372 229 143 0 2 75.52
73 72 678 512 166 0 1 73.51
74 73 638 469 169 0 1 74.89
75 74 685 513 172 0 1 44.28
76 75 201 89 112 0 3 59.88
77 76 344 206 138 0 2 61.45
78 77 345 212 133 0 2 50.19
79 78 261 131 130 0 3 10.64
80 79 47 5 42 0 15 75.3
81 80 660 497 163 0 1 74.29
82 81 634 471 163 0 1 37.96
83 82 137 52 85 0 5 57.28
84 83 309 177 132 0 2 75.51
85 84 686 518 168 0 1 74.63
86 85 682 509 173 0 1 58.39
87 86 322 188 134 0 2 74.7
88 87 676 505 171 0 1 58.15
89 88 325 189 136 0 2 75.62
90 89 689 521 168 0 1 75.11
91 90 695 522 173 0 1 62.35
92 91 324 202 122 0 2 60.53
93 92 337 204 133 0 2 47.75
94 93 222 106 116 0 3 75.07
95 94 686 515 171 0 1 62.39
96 95 351 219 132 0 2 76.29
97 96 717 547 170 0 1 74.4
98 97 664 494 170 0 1 8.7
99 98 23 2 21 0 37 46.96
100 99 181 85 96 0 4 59.64