Skip to content

Commit caeef52

Browse files
committed
Updates.
1 parent 93d7c23 commit caeef52

7 files changed

Lines changed: 195 additions & 0 deletions

File tree

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Input data
2+
x <- c(1,2,5,10,20,30,50,60,70,80,90,100,200,300,400,500,600,700,800,900,1000,2000,3000,4000,5000,6000,7000,8000,9000,10000,20000,30000,40000,50000,60000,70000,80000,90000,100000,200000,300000,400000,500000,600000,700000,800000,900000,1000000,2000000,3000000,4000000,5000000,6000000,7000000,8000000,9000000,10000000,20000000,30000000,40000000,50000000,60000000,70000000,80000000,90000000,100000000,200000000,300000000,400000000,500000000,600000000,700000000,800000000,900000000,1000000000)
3+
y <- c(156140,159150,159420,164690,166580,167840,173790,177340,180810,183370,186410,190170,293950,318860,345640,372380,394350,416990,438540,466740,487750,724790,968080,1221100,1463700,1697600,1932800,2184300,2418900,2665900,5092600,7460700,9887400,12263000,14762000,17178000,19593000,22000000,24200000,47998000,73065000,96783000,121170000,147250000,176880000,214410000,262140000,314620000,952350000,1650300000,2475400000,18120000000,21761000000,25531000000,29205000000,32574000000,36279000000,72563000000,109880000000,145250000000,180100000000,215770000000,251910000000,283910000000,323080000000,358850000000,713360000000,1065500000000,1425500000000,1769600000000,2124100000000,2479200000000,2846000000000,3188000000000,3559900000000)
4+
y1 <- c(186250000,187680000,185740000,185590000,184080000,188810000,186560000,187070000,184710000,187070000,189430000,193360000,186890000,191010000,189450000,191560000,189840000,190030000,191470000,198140000,187450000,203890000,199510000,205980000,202410000,211460000,211370000,216070000,216610000,222530000,260360000,291560000,335430000,366170000,396020000,436790000,473960000,506320000,548600000,918260000,1288200000,1606200000,1969000000,2403500000,2663300000,3043600000,3374600000,3681900000,7284800000,10904000000,14491000000,18155000000,21581000000,25187000000,28622000000,32676000000,36301000000,72338000000,107840000000,142580000000,176540000000,213540000000,249870000000,284500000000,319450000000,355650000000,707920000000,1060100000000,1396900000000,1752800000000,2119800000000,2450200000000,2803800000000,3147500000000,3505200000000)
5+
6+
png("table-grow-compare.png")
7+
plot(x, y, type = "l", lty = 1, log = "xy", col = "red", main = "table.grow comparison Linux")
8+
lines(x, y1, col = "blue")
26.2 KB
Loading
26.6 KB
Loading
26 KB
Loading
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# Input data
2+
x <- c(1,2,5,10,20,30,50,60,70,80,90,100,200,300,400,500,600,700,800,900,1000,2000,3000,4000,5000,6000,7000,8000,9000,10000,20000,30000,40000,50000,60000,70000,80000,90000,100000,200000,300000,400000,500000,600000,700000,800000,900000,1000000,2000000,3000000,4000000,5000000,6000000,7000000,8000000,9000000,10000000,20000000,30000000,40000000,50000000,60000000,70000000,80000000,90000000,100000000,200000000,300000000,400000000,500000000,600000000,700000000,800000000,900000000,1000000000)
3+
y <- c(156140,159150,159420,164690,166580,167840,173790,177340,180810,183370,186410,190170,293950,318860,345640,372380,394350,416990,438540,466740,487750,724790,968080,1221100,1463700,1697600,1932800,2184300,2418900,2665900,5092600,7460700,9887400,12263000,14762000,17178000,19593000,22000000,24200000,47998000,73065000,96783000,121170000,147250000,176880000,214410000,262140000,314620000,952350000,1650300000,2475400000,18120000000,21761000000,25531000000,29205000000,32574000000,36279000000,72563000000,109880000000,145250000000,180100000000,215770000000,251910000000,283910000000,323080000000,358850000000,713360000000,1065500000000,1425500000000,1769600000000,2124100000000,2479200000000,2846000000000,3188000000000,3559900000000)
4+
5+
# Linear regression
6+
model <- lm(y ~ x)
7+
coefs <- coef(model)
8+
9+
# Print regression coefficients
10+
print(coefs)
11+
12+
# Estimating function
13+
base <- 200000000
14+
size <- 16
15+
cost <- 57344
16+
fe <- function(x) {
17+
base + (((x + size - 1) / size) * cost)
18+
}
19+
20+
# Estimated values
21+
xe <- seq(1, 1000000000, by = 10000)
22+
ye <- fe(xe)
23+
24+
png("table-grow-reg.png")
25+
plot(x, y, main = "table.grow reg Linux")
26+
abline(model, col = "blue")
27+
lines(xe, ye, col = "magenta")
28+
legend("bottomright", legend = sprintf("y = %.0f + %.2f x", coefs[1], coefs[2]), bty = "n")
29+
30+
png("table-grow-log.png")
31+
plot(x, y, log = "x", main = "table.grow log Linux")
32+
lines(xe, ye, col = "magenta")
33+
legend("topleft", legend = sprintf(" base = %i\n size = %i\n cost = %i", base, size, cost), bty = "n")
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
1 156140
2+
2 159150
3+
5 159420
4+
10 164690
5+
20 166580
6+
30 167840
7+
50 173790
8+
60 177340
9+
70 180810
10+
80 183370
11+
90 186410
12+
100 190170
13+
200 293950
14+
300 318860
15+
400 345640
16+
500 372380
17+
600 394350
18+
700 416990
19+
800 438540
20+
900 466740
21+
1000 487750
22+
2000 724790
23+
3000 968080
24+
4000 1221100
25+
5000 1463700
26+
6000 1697600
27+
7000 1932800
28+
8000 2184300
29+
9000 2418900
30+
10000 2665900
31+
20000 5092600
32+
30000 7460700
33+
40000 9887400
34+
50000 12263000
35+
60000 14762000
36+
70000 17178000
37+
80000 19593000
38+
90000 22000000
39+
100000 24200000
40+
200000 47998000
41+
300000 73065000
42+
400000 96783000
43+
500000 121170000
44+
600000 147250000
45+
700000 176880000
46+
800000 214410000
47+
900000 262140000
48+
1000000 314620000
49+
2000000 952350000
50+
3000000 1650300000
51+
4000000 2475400000
52+
5000000 18120000000
53+
6000000 21761000000
54+
7000000 25531000000
55+
8000000 29205000000
56+
9000000 32574000000
57+
10000000 36279000000
58+
20000000 72563000000
59+
30000000 109880000000
60+
40000000 145250000000
61+
50000000 180100000000
62+
60000000 215770000000
63+
70000000 251910000000
64+
80000000 283910000000
65+
90000000 323080000000
66+
100000000 358850000000
67+
200000000 713360000000
68+
300000000 1065500000000
69+
400000000 1425500000000
70+
500000000 1769600000000
71+
600000000 2124100000000
72+
700000000 2479200000000
73+
800000000 2846000000000
74+
900000000 3188000000000
75+
1000000000 3559900000000
76+
77+
1,2,5,10,20,30,50,60,70,80,90,100,200,300,400,500,600,700,800,900,1000,2000,3000,4000,5000,6000,7000,8000,9000,10000,20000,30000,40000,50000,60000,70000,80000,90000,100000,200000,300000,400000,500000,600000,700000,800000,900000,1000000,2000000,3000000,4000000,5000000,6000000,7000000,8000000,9000000,10000000,20000000,30000000,40000000,50000000,60000000,70000000,80000000,90000000,100000000,200000000,300000000,400000000,500000000,600000000,700000000,800000000,900000000,1000000000
78+
156140,159150,159420,164690,166580,167840,173790,177340,180810,183370,186410,190170,293950,318860,345640,372380,394350,416990,438540,466740,487750,724790,968080,1221100,1463700,1697600,1932800,2184300,2418900,2665900,5092600,7460700,9887400,12263000,14762000,17178000,19593000,22000000,24200000,47998000,73065000,96783000,121170000,147250000,176880000,214410000,262140000,314620000,952350000,1650300000,2475400000,18120000000,21761000000,25531000000,29205000000,32574000000,36279000000,72563000000,109880000000,145250000000,180100000000,215770000000,251910000000,283910000000,323080000000,358850000000,713360000000,1065500000000,1425500000000,1769600000000,2124100000000,2479200000000,2846000000000,3188000000000,3559900000000
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
t.grow/0 time: [105.44 ns 106.45 ns 107.61 ns]
2+
t.grow/1 time: [154.67 ns 156.14 ns 157.79 ns]
3+
t.grow/2 time: [155.81 ns 159.15 ns 161.94 ns]
4+
t.grow/5 time: [157.95 ns 159.42 ns 160.75 ns]
5+
t.grow/10 time: [163.16 ns 164.69 ns 167.14 ns]
6+
t.grow/20 time: [165.01 ns 166.58 ns 168.80 ns]
7+
t.grow/30 time: [166.54 ns 167.84 ns 169.79 ns]
8+
t.grow/50 time: [172.16 ns 173.79 ns 176.36 ns]
9+
t.grow/60 time: [175.83 ns 177.34 ns 179.66 ns]
10+
t.grow/70 time: [179.57 ns 180.81 ns 182.68 ns]
11+
t.grow/80 time: [182.22 ns 183.37 ns 185.11 ns]
12+
t.grow/90 time: [185.02 ns 186.41 ns 188.62 ns]
13+
t.grow/100 time: [188.96 ns 190.17 ns 192.02 ns]
14+
t.grow/200 time: [292.42 ns 293.95 ns 295.96 ns]
15+
t.grow/300 time: [317.11 ns 318.86 ns 320.17 ns]
16+
t.grow/400 time: [344.11 ns 345.64 ns 347.04 ns]
17+
t.grow/500 time: [369.83 ns 372.38 ns 374.99 ns]
18+
t.grow/600 time: [392.12 ns 394.35 ns 396.75 ns]
19+
t.grow/700 time: [414.98 ns 416.99 ns 419.29 ns]
20+
t.grow/800 time: [436.53 ns 438.54 ns 441.16 ns]
21+
t.grow/900 time: [463.71 ns 466.74 ns 471.16 ns]
22+
t.grow/1000 time: [485.23 ns 487.75 ns 491.42 ns]
23+
t.grow/2000 time: [719.63 ns 724.79 ns 732.51 ns]
24+
t.grow/3000 time: [959.67 ns 968.08 ns 980.86 ns]
25+
t.grow/4000 time: [1.2104 µs 1.2211 µs 1.2380 µs]
26+
t.grow/5000 time: [1.4486 µs 1.4637 µs 1.4856 µs]
27+
t.grow/6000 time: [1.6800 µs 1.6976 µs 1.7230 µs]
28+
t.grow/7000 time: [1.9144 µs 1.9328 µs 1.9582 µs]
29+
t.grow/8000 time: [2.1603 µs 2.1843 µs 2.2176 µs]
30+
t.grow/9000 time: [2.3932 µs 2.4189 µs 2.4563 µs]
31+
t.grow/10000 time: [2.6362 µs 2.6659 µs 2.7066 µs]
32+
t.grow/20000 time: [5.0223 µs 5.0926 µs 5.1721 µs]
33+
t.grow/30000 time: [7.3753 µs 7.4607 µs 7.5673 µs]
34+
t.grow/40000 time: [9.7777 µs 9.8874 µs 9.9963 µs]
35+
t.grow/50000 time: [12.110 µs 12.263 µs 12.443 µs]
36+
t.grow/60000 time: [14.568 µs 14.762 µs 14.987 µs]
37+
t.grow/70000 time: [16.937 µs 17.178 µs 17.439 µs]
38+
t.grow/80000 time: [19.330 µs 19.593 µs 19.829 µs]
39+
t.grow/90000 time: [21.721 µs 22.000 µs 22.219 µs]
40+
t.grow/100000 time: [23.911 µs 24.200 µs 24.508 µs]
41+
t.grow/200000 time: [47.471 µs 47.998 µs 48.505 µs]
42+
t.grow/300000 time: [72.067 µs 73.065 µs 74.033 µs]
43+
t.grow/400000 time: [95.413 µs 96.783 µs 98.060 µs]
44+
t.grow/500000 time: [119.67 µs 121.17 µs 122.85 µs]
45+
t.grow/600000 time: [144.76 µs 147.25 µs 149.77 µs]
46+
t.grow/700000 time: [173.45 µs 176.88 µs 180.42 µs]
47+
t.grow/800000 time: [208.68 µs 214.41 µs 221.82 µs]
48+
t.grow/900000 time: [253.49 µs 262.14 µs 273.57 µs]
49+
t.grow/1000000 time: [303.57 µs 314.62 µs 329.37 µs]
50+
t.grow/2000000 time: [920.67 µs 952.35 µs 1.0047 ms]
51+
t.grow/3000000 time: [1.6033 ms 1.6503 ms 1.7171 ms]
52+
t.grow/4000000 time: [2.3940 ms 2.4754 ms 2.5665 ms]
53+
t.grow/5000000 time: [17.955 ms 18.120 ms 18.288 ms]
54+
t.grow/6000000 time: [21.558 ms 21.761 ms 21.966 ms]
55+
t.grow/7000000 time: [25.247 ms 25.531 ms 25.819 ms]
56+
t.grow/8000000 time: [28.885 ms 29.205 ms 29.520 ms]
57+
t.grow/9000000 time: [32.268 ms 32.574 ms 32.885 ms]
58+
t.grow/10000000 time: [35.894 ms 36.279 ms 36.669 ms]
59+
t.grow/20000000 time: [71.779 ms 72.563 ms 73.349 ms]
60+
t.grow/30000000 time: [108.55 ms 109.88 ms 111.21 ms]
61+
t.grow/40000000 time: [143.81 ms 145.25 ms 146.67 ms]
62+
t.grow/50000000 time: [178.20 ms 180.10 ms 182.12 ms]
63+
t.grow/60000000 time: [213.73 ms 215.77 ms 217.95 ms]
64+
t.grow/70000000 time: [249.73 ms 251.91 ms 254.28 ms]
65+
t.grow/80000000 time: [281.83 ms 283.91 ms 286.21 ms]
66+
t.grow/90000000 time: [320.31 ms 323.08 ms 326.29 ms]
67+
t.grow/100000000 time: [355.63 ms 358.85 ms 362.76 ms]
68+
t.grow/200000000 time: [709.50 ms 713.36 ms 718.62 ms]
69+
t.grow/300000000 time: [1.0610 s 1.0655 s 1.0716 s]
70+
t.grow/400000000 time: [1.4207 s 1.4255 s 1.4323 s]
71+
t.grow/500000000 time: [1.7646 s 1.7696 s 1.7759 s]
72+
t.grow/600000000 time: [2.1202 s 2.1241 s 2.1292 s]
73+
t.grow/700000000 time: [2.4742 s 2.4792 s 2.4864 s]
74+
t.grow/800000000 time: [2.8402 s 2.8460 s 2.8539 s]
75+
t.grow/900000000 time: [3.1796 s 3.1880 s 3.2006 s]
76+
t.grow/1000000000 time: [3.5491 s 3.5599 s 3.5733 s]

0 commit comments

Comments
 (0)