fix(simulation): correct exponential sampling and cache behavior logic

- Fixed incorrect use of exponential sampling for `next_request` and `next_refresh` timings.
- Adjusted cache eviction logic to properly handle capacity checks.
- Improved simulation output and logging for least accessed objects.
- Corrected CSV export to include index labels for better data clarity.
- Reran experiments

Signed-off-by: Tuan-Dat Tran <tuan-dat.tran@tudattr.dev>
This commit is contained in:
Tuan-Dat Tran
2024-11-28 11:19:04 +01:00
parent dea6004160
commit 09b943e41d
41 changed files with 1828 additions and 1435 deletions

View File

@@ -1,100 +1,100 @@
,access_count,hits,misses,mu,lambda,hit_rate,avg_age
1,664,550,114,0,1,58.49,2.596363636363636
2,212,124,88,0,3,83.21,2.524193548387097
3,673,560,113,0,1,84.11,2.405357142857143
4,711,598,113,0,1,72.17,2.4013377926421406
5,345,249,96,0,2,82.43,2.4698795180722892
6,649,535,114,0,1,50.36,2.3906542056074764
7,137,69,68,0,5,83.41,2.739130434782609
8,681,568,113,0,1,83.74,2.433098591549296
9,689,577,112,0,1,82.91,2.5095320623916813
10,667,553,114,0,1,71.34,2.5750452079566
11,328,234,94,0,2,83.67,2.4188034188034186
12,692,579,113,0,1,83.46,2.5250431778929188
13,683,570,113,0,1,83.48,2.5526315789473686
14,696,581,115,0,1,70.64,2.495697074010327
15,344,243,101,0,2,71.78,2.522633744855967
16,326,234,92,0,2,83.45,2.7777777777777777
17,689,575,114,0,1,83.65,2.4991304347826087
18,691,578,113,0,1,62.56,2.48961937716263
19,219,137,82,0,3,84.29,2.562043795620438
20,732,617,115,0,1,84.44,2.521880064829822
21,739,624,115,0,1,83.31,2.4759615384615383
22,683,569,114,0,1,83.13,2.4938488576449913
23,670,557,113,0,1,71.3,2.466786355475763
24,331,236,95,0,2,83.84,2.5466101694915255
25,724,607,117,0,1,83.38,2.3789126853377267
26,692,577,115,0,1,83.69,2.5753899480069324
27,705,590,115,0,1,48.18,2.422033898305085
28,137,66,71,0,5,83.04,2.5757575757575757
29,672,558,114,0,1,83.43,2.4408602150537635
30,694,579,115,0,1,83.23,2.597582037996546
31,674,561,113,0,1,51.39,2.443850267379679
32,144,74,70,0,4,83.13,2.554054054054054
33,670,557,113,0,1,48.94,2.443447037701975
34,141,69,72,0,4,83.0,2.6231884057971016
35,659,547,112,0,1,83.36,2.409506398537477
36,691,576,115,0,1,84.67,2.4444444444444446
37,737,624,113,0,1,62.56,2.3846153846153846
38,219,137,82,0,3,41.0,2.81021897810219
39,100,41,59,0,8,83.61,2.5121951219512195
40,714,597,117,0,1,55.98,2.5008375209380236
41,184,103,81,0,4,57.14,2.5728155339805827
42,161,92,69,0,4,73.76,2.6847826086956523
43,362,267,95,0,2,83.91,2.397003745318352
44,696,584,112,0,1,82.46,2.4914383561643834
45,627,517,110,0,1,82.72,2.4545454545454546
46,648,536,112,0,1,30.19,2.5167910447761193
47,53,16,37,0,10,83.14,2.9375
48,676,562,114,0,1,82.29,2.597864768683274
49,638,525,113,0,1,83.06,2.5238095238095237
50,673,559,114,0,1,49.22,2.4991055456171734
51,128,63,65,0,5,34.12,2.3492063492063493
52,85,29,56,0,9,84.34,2.1724137931034484
53,747,630,117,0,1,83.86,2.5365079365079364
54,700,587,113,0,1,83.41,2.5792163543441227
55,687,573,114,0,1,83.75,2.4223385689354275
56,720,603,117,0,1,83.33,2.527363184079602
57,690,575,115,0,1,17.5,2.3756521739130436
58,40,7,33,0,17,70.13,3.0
59,318,223,95,0,2,82.94,2.506726457399103
60,674,559,115,0,1,21.74,2.4686940966010735
61,23,5,18,0,26,83.84,0.6
62,724,607,117,0,1,82.17,2.6227347611202636
63,628,516,112,0,1,71.59,2.4108527131782944
64,345,247,98,0,2,83.11,2.42914979757085
65,681,566,115,0,1,31.51,2.57773851590106
66,73,23,50,0,10,83.1,2.782608695652174
67,651,541,110,0,1,0.0,2.478743068391867
68,10,0,10,0,69,82.55,0.0
69,636,525,111,0,1,82.62,2.459047619047619
70,656,542,114,0,1,73.12,2.559040590405904
71,372,272,100,0,2,83.48,2.6544117647058822
72,678,566,112,0,1,82.13,2.487632508833922
73,638,524,114,0,1,82.92,2.427480916030534
74,685,568,117,0,1,57.71,2.482394366197183
75,201,116,85,0,3,72.67,2.7327586206896552
76,344,250,94,0,2,72.17,2.576
77,345,249,96,0,2,64.75,2.4859437751004014
78,261,169,92,0,3,19.15,2.5562130177514795
79,47,9,38,0,15,83.48,2.5555555555555554
80,660,551,109,0,1,82.18,2.6515426497277677
81,634,521,113,0,1,51.09,2.44721689059501
82,137,70,67,0,5,69.58,2.557142857142857
83,309,215,94,0,2,83.53,2.7209302325581395
84,686,573,113,0,1,82.84,2.4694589877835953
85,682,565,117,0,1,71.12,2.320353982300885
86,322,229,93,0,2,83.28,2.6026200873362444
87,676,563,113,0,1,68.62,2.644760213143872
88,325,223,102,0,2,83.16,2.4260089686098656
89,689,573,116,0,1,83.31,2.5095986038394416
90,695,579,116,0,1,73.15,2.542314335060449
91,324,237,87,0,2,72.11,2.261603375527426
92,337,243,94,0,2,63.51,2.316872427983539
93,222,141,81,0,3,83.09,2.5106382978723403
94,686,570,116,0,1,71.79,2.507017543859649
95,351,252,99,0,2,84.66,2.373015873015873
96,717,607,110,0,1,83.28,2.4365733113673804
97,664,553,111,0,1,21.74,2.54249547920434
98,23,5,18,0,37,56.91,3.4
99,181,103,78,0,4,70.62,2.320388349514563
obj_id,access_count,hits,misses,mu,lambda,hit_rate,avg_age
1,122,101,21,0,1,93.98,2.3564356435643563
2,382,359,23,0,3,82.68,2.6072423398328692
3,127,105,22,0,1,81.42,2.3714285714285714
4,113,92,21,0,1,90.98,2.3260869565217392
5,244,222,22,0,2,81.9,2.436936936936937
6,116,95,21,0,1,96.34,2.431578947368421
7,656,632,24,0,5,83.59,2.4778481012658227
8,128,107,21,0,1,82.46,2.149532710280374
9,114,94,20,0,1,81.74,2.606382978723404
10,115,94,21,0,1,90.65,2.5851063829787235
11,246,223,23,0,2,85.61,2.5381165919282513
12,132,113,19,0,1,84.89,2.433628318584071
13,139,118,21,0,1,83.33,2.635593220338983
14,120,100,20,0,1,91.19,2.28
15,261,238,23,0,2,89.78,2.5126050420168067
16,225,202,23,0,2,83.33,2.485148514851485
17,120,100,20,0,1,82.91,2.54
18,117,97,20,0,1,93.33,2.515463917525773
19,360,336,24,0,3,82.91,2.4851190476190474
20,117,97,20,0,1,83.58,2.556701030927835
21,134,112,22,0,1,85.71,2.5535714285714284
22,147,126,21,0,1,84.51,2.2936507936507935
23,142,120,22,0,1,91.67,2.683333333333333
24,264,242,22,0,2,82.93,2.5785123966942147
25,123,102,21,0,1,84.4,2.696078431372549
26,141,119,22,0,1,83.59,2.5546218487394956
27,128,107,21,0,1,95.74,2.7289719626168223
28,564,540,24,0,5,83.46,2.5425925925925927
29,133,111,22,0,1,82.4,2.981981981981982
30,125,103,22,0,1,80.87,2.3980582524271843
31,115,93,22,0,1,94.87,2.5698924731182795
32,468,444,24,0,4,81.9,2.484234234234234
33,116,95,21,0,1,95.38,2.294736842105263
34,498,475,23,0,4,84.85,2.557894736842105
35,132,112,20,0,1,80.0,2.4464285714285716
36,100,80,20,0,1,85.23,2.4625
37,149,127,22,0,1,93.52,2.4488188976377954
38,355,332,23,0,3,97.4,2.539156626506024
39,962,937,25,0,8,83.59,2.463180362860192
40,128,107,21,0,1,94.94,2.6261682242990654
41,474,450,24,0,4,95.15,2.4444444444444446
42,495,471,24,0,4,89.67,2.5286624203821657
43,213,191,22,0,2,81.25,2.324607329842932
44,112,91,21,0,1,83.72,2.3736263736263736
45,129,108,21,0,1,84.21,2.4537037037037037
46,133,112,21,0,1,98.1,2.4910714285714284
47,1262,1238,24,0,10,84.56,2.3966074313408723
48,136,115,21,0,1,84.4,2.4434782608695653
49,141,119,22,0,1,81.51,2.638655462184874
50,119,97,22,0,1,95.99,2.618556701030928
51,599,575,24,0,5,97.83,2.506086956521739
52,1106,1082,24,0,9,82.64,2.3475046210720887
53,121,100,21,0,1,83.21,2.74
54,131,109,22,0,1,83.06,2.541284403669725
55,124,103,21,0,1,83.85,2.5728155339805827
56,130,109,21,0,1,83.06,2.623853211009174
57,124,103,21,0,1,98.82,2.4757281553398056
58,2118,2093,25,0,17,88.78,2.381748686096512
59,205,182,23,0,2,83.94,2.434065934065934
60,137,115,22,0,1,99.22,2.1565217391304348
61,3216,3191,25,0,26,84.78,2.3017862738953307
62,138,117,21,0,1,81.2,2.3162393162393164
63,117,95,22,0,1,91.29,2.536842105263158
64,264,241,23,0,2,85.61,2.3070539419087135
65,139,119,20,0,1,98.0,2.504201680672269
66,1248,1223,25,0,10,86.3,2.443990188062142
67,146,126,20,0,1,99.7,2.2142857142857144
68,8414,8389,25,0,69,81.9,2.148647037787579
69,116,95,21,0,1,83.33,2.1894736842105265
70,120,100,20,0,1,90.98,2.38
71,244,222,22,0,2,82.05,2.2972972972972974
72,117,96,21,0,1,83.97,2.625
73,131,110,21,0,1,84.51,2.4727272727272727
74,142,120,22,0,1,93.29,2.2083333333333335
75,343,320,23,0,3,90.8,2.321875
76,250,227,23,0,2,90.91,2.5594713656387666
77,253,230,23,0,2,94.16,2.4608695652173913
78,394,371,23,0,3,98.69,2.5741239892183287
79,1910,1885,25,0,15,83.33,2.3421750663129974
80,120,100,20,0,1,83.47,2.4
81,121,101,20,0,1,96.29,2.287128712871287
82,647,623,24,0,5,90.73,2.446227929373997
83,248,225,23,0,2,84.72,2.417777777777778
84,144,122,22,0,1,80.56,2.4098360655737703
85,108,87,21,0,1,89.57,2.206896551724138
86,211,189,22,0,2,85.07,2.433862433862434
87,134,114,20,0,1,89.73,2.508771929824561
88,224,201,23,0,2,84.44,2.5771144278606966
89,135,114,21,0,1,82.26,2.43859649122807
90,124,102,22,0,1,90.42,2.235294117647059
91,240,217,23,0,2,89.96,2.6359447004608296
92,229,206,23,0,2,93.89,2.320388349514563
93,393,369,24,0,3,83.2,2.5121951219512195
94,125,104,21,0,1,91.05,2.5673076923076925
95,257,234,23,0,2,84.89,2.341880341880342
96,139,118,21,0,1,83.46,2.2203389830508473
97,127,106,21,0,1,99.45,2.792452830188679
98,4578,4553,25,0,37,95.02,2.238304414671645
99,482,458,24,0,4,90.76,2.489082969432314
1 obj_id access_count hits misses mu lambda hit_rate avg_age
2 1 664 122 550 101 114 21 0 1 58.49 93.98 2.596363636363636 2.3564356435643563
3 2 212 382 124 359 88 23 0 3 83.21 82.68 2.524193548387097 2.6072423398328692
4 3 673 127 560 105 113 22 0 1 84.11 81.42 2.405357142857143 2.3714285714285714
5 4 711 113 598 92 113 21 0 1 72.17 90.98 2.4013377926421406 2.3260869565217392
6 5 345 244 249 222 96 22 0 2 82.43 81.9 2.4698795180722892 2.436936936936937
7 6 649 116 535 95 114 21 0 1 50.36 96.34 2.3906542056074764 2.431578947368421
8 7 137 656 69 632 68 24 0 5 83.41 83.59 2.739130434782609 2.4778481012658227
9 8 681 128 568 107 113 21 0 1 83.74 82.46 2.433098591549296 2.149532710280374
10 9 689 114 577 94 112 20 0 1 82.91 81.74 2.5095320623916813 2.606382978723404
11 10 667 115 553 94 114 21 0 1 71.34 90.65 2.5750452079566 2.5851063829787235
12 11 328 246 234 223 94 23 0 2 83.67 85.61 2.4188034188034186 2.5381165919282513
13 12 692 132 579 113 113 19 0 1 83.46 84.89 2.5250431778929188 2.433628318584071
14 13 683 139 570 118 113 21 0 1 83.48 83.33 2.5526315789473686 2.635593220338983
15 14 696 120 581 100 115 20 0 1 70.64 91.19 2.495697074010327 2.28
16 15 344 261 243 238 101 23 0 2 71.78 89.78 2.522633744855967 2.5126050420168067
17 16 326 225 234 202 92 23 0 2 83.45 83.33 2.7777777777777777 2.485148514851485
18 17 689 120 575 100 114 20 0 1 83.65 82.91 2.4991304347826087 2.54
19 18 691 117 578 97 113 20 0 1 62.56 93.33 2.48961937716263 2.515463917525773
20 19 219 360 137 336 82 24 0 3 84.29 82.91 2.562043795620438 2.4851190476190474
21 20 732 117 617 97 115 20 0 1 84.44 83.58 2.521880064829822 2.556701030927835
22 21 739 134 624 112 115 22 0 1 83.31 85.71 2.4759615384615383 2.5535714285714284
23 22 683 147 569 126 114 21 0 1 83.13 84.51 2.4938488576449913 2.2936507936507935
24 23 670 142 557 120 113 22 0 1 71.3 91.67 2.466786355475763 2.683333333333333
25 24 331 264 236 242 95 22 0 2 83.84 82.93 2.5466101694915255 2.5785123966942147
26 25 724 123 607 102 117 21 0 1 83.38 84.4 2.3789126853377267 2.696078431372549
27 26 692 141 577 119 115 22 0 1 83.69 83.59 2.5753899480069324 2.5546218487394956
28 27 705 128 590 107 115 21 0 1 48.18 95.74 2.422033898305085 2.7289719626168223
29 28 137 564 66 540 71 24 0 5 83.04 83.46 2.5757575757575757 2.5425925925925927
30 29 672 133 558 111 114 22 0 1 83.43 82.4 2.4408602150537635 2.981981981981982
31 30 694 125 579 103 115 22 0 1 83.23 80.87 2.597582037996546 2.3980582524271843
32 31 674 115 561 93 113 22 0 1 51.39 94.87 2.443850267379679 2.5698924731182795
33 32 144 468 74 444 70 24 0 4 83.13 81.9 2.554054054054054 2.484234234234234
34 33 670 116 557 95 113 21 0 1 48.94 95.38 2.443447037701975 2.294736842105263
35 34 141 498 69 475 72 23 0 4 83.0 84.85 2.6231884057971016 2.557894736842105
36 35 659 132 547 112 112 20 0 1 83.36 80.0 2.409506398537477 2.4464285714285716
37 36 691 100 576 80 115 20 0 1 84.67 85.23 2.4444444444444446 2.4625
38 37 737 149 624 127 113 22 0 1 62.56 93.52 2.3846153846153846 2.4488188976377954
39 38 219 355 137 332 82 23 0 3 41.0 97.4 2.81021897810219 2.539156626506024
40 39 100 962 41 937 59 25 0 8 83.61 83.59 2.5121951219512195 2.463180362860192
41 40 714 128 597 107 117 21 0 1 55.98 94.94 2.5008375209380236 2.6261682242990654
42 41 184 474 103 450 81 24 0 4 57.14 95.15 2.5728155339805827 2.4444444444444446
43 42 161 495 92 471 69 24 0 4 73.76 89.67 2.6847826086956523 2.5286624203821657
44 43 362 213 267 191 95 22 0 2 83.91 81.25 2.397003745318352 2.324607329842932
45 44 696 112 584 91 112 21 0 1 82.46 83.72 2.4914383561643834 2.3736263736263736
46 45 627 129 517 108 110 21 0 1 82.72 84.21 2.4545454545454546 2.4537037037037037
47 46 648 133 536 112 112 21 0 1 30.19 98.1 2.5167910447761193 2.4910714285714284
48 47 53 1262 16 1238 37 24 0 10 83.14 84.56 2.9375 2.3966074313408723
49 48 676 136 562 115 114 21 0 1 82.29 84.4 2.597864768683274 2.4434782608695653
50 49 638 141 525 119 113 22 0 1 83.06 81.51 2.5238095238095237 2.638655462184874
51 50 673 119 559 97 114 22 0 1 49.22 95.99 2.4991055456171734 2.618556701030928
52 51 128 599 63 575 65 24 0 5 34.12 97.83 2.3492063492063493 2.506086956521739
53 52 85 1106 29 1082 56 24 0 9 84.34 82.64 2.1724137931034484 2.3475046210720887
54 53 747 121 630 100 117 21 0 1 83.86 83.21 2.5365079365079364 2.74
55 54 700 131 587 109 113 22 0 1 83.41 83.06 2.5792163543441227 2.541284403669725
56 55 687 124 573 103 114 21 0 1 83.75 83.85 2.4223385689354275 2.5728155339805827
57 56 720 130 603 109 117 21 0 1 83.33 83.06 2.527363184079602 2.623853211009174
58 57 690 124 575 103 115 21 0 1 17.5 98.82 2.3756521739130436 2.4757281553398056
59 58 40 2118 7 2093 33 25 0 17 70.13 88.78 3.0 2.381748686096512
60 59 318 205 223 182 95 23 0 2 82.94 83.94 2.506726457399103 2.434065934065934
61 60 674 137 559 115 115 22 0 1 21.74 99.22 2.4686940966010735 2.1565217391304348
62 61 23 3216 5 3191 18 25 0 26 83.84 84.78 0.6 2.3017862738953307
63 62 724 138 607 117 117 21 0 1 82.17 81.2 2.6227347611202636 2.3162393162393164
64 63 628 117 516 95 112 22 0 1 71.59 91.29 2.4108527131782944 2.536842105263158
65 64 345 264 247 241 98 23 0 2 83.11 85.61 2.42914979757085 2.3070539419087135
66 65 681 139 566 119 115 20 0 1 31.51 98.0 2.57773851590106 2.504201680672269
67 66 73 1248 23 1223 50 25 0 10 83.1 86.3 2.782608695652174 2.443990188062142
68 67 651 146 541 126 110 20 0 1 0.0 99.7 2.478743068391867 2.2142857142857144
69 68 10 8414 0 8389 10 25 0 69 82.55 81.9 0.0 2.148647037787579
70 69 636 116 525 95 111 21 0 1 82.62 83.33 2.459047619047619 2.1894736842105265
71 70 656 120 542 100 114 20 0 1 73.12 90.98 2.559040590405904 2.38
72 71 372 244 272 222 100 22 0 2 83.48 82.05 2.6544117647058822 2.2972972972972974
73 72 678 117 566 96 112 21 0 1 82.13 83.97 2.487632508833922 2.625
74 73 638 131 524 110 114 21 0 1 82.92 84.51 2.427480916030534 2.4727272727272727
75 74 685 142 568 120 117 22 0 1 57.71 93.29 2.482394366197183 2.2083333333333335
76 75 201 343 116 320 85 23 0 3 72.67 90.8 2.7327586206896552 2.321875
77 76 344 250 250 227 94 23 0 2 72.17 90.91 2.576 2.5594713656387666
78 77 345 253 249 230 96 23 0 2 64.75 94.16 2.4859437751004014 2.4608695652173913
79 78 261 394 169 371 92 23 0 3 19.15 98.69 2.5562130177514795 2.5741239892183287
80 79 47 1910 9 1885 38 25 0 15 83.48 83.33 2.5555555555555554 2.3421750663129974
81 80 660 120 551 100 109 20 0 1 82.18 83.47 2.6515426497277677 2.4
82 81 634 121 521 101 113 20 0 1 51.09 96.29 2.44721689059501 2.287128712871287
83 82 137 647 70 623 67 24 0 5 69.58 90.73 2.557142857142857 2.446227929373997
84 83 309 248 215 225 94 23 0 2 83.53 84.72 2.7209302325581395 2.417777777777778
85 84 686 144 573 122 113 22 0 1 82.84 80.56 2.4694589877835953 2.4098360655737703
86 85 682 108 565 87 117 21 0 1 71.12 89.57 2.320353982300885 2.206896551724138
87 86 322 211 229 189 93 22 0 2 83.28 85.07 2.6026200873362444 2.433862433862434
88 87 676 134 563 114 113 20 0 1 68.62 89.73 2.644760213143872 2.508771929824561
89 88 325 224 223 201 102 23 0 2 83.16 84.44 2.4260089686098656 2.5771144278606966
90 89 689 135 573 114 116 21 0 1 83.31 82.26 2.5095986038394416 2.43859649122807
91 90 695 124 579 102 116 22 0 1 73.15 90.42 2.542314335060449 2.235294117647059
92 91 324 240 237 217 87 23 0 2 72.11 89.96 2.261603375527426 2.6359447004608296
93 92 337 229 243 206 94 23 0 2 63.51 93.89 2.316872427983539 2.320388349514563
94 93 222 393 141 369 81 24 0 3 83.09 83.2 2.5106382978723403 2.5121951219512195
95 94 686 125 570 104 116 21 0 1 71.79 91.05 2.507017543859649 2.5673076923076925
96 95 351 257 252 234 99 23 0 2 84.66 84.89 2.373015873015873 2.341880341880342
97 96 717 139 607 118 110 21 0 1 83.28 83.46 2.4365733113673804 2.2203389830508473
98 97 664 127 553 106 111 21 0 1 21.74 99.45 2.54249547920434 2.792452830188679
99 98 23 4578 5 4553 18 25 0 37 56.91 95.02 3.4 2.238304414671645
100 99 181 482 103 458 78 24 0 4 70.62 90.76 2.320388349514563 2.489082969432314