forked from arthurnn/memcached
-
Notifications
You must be signed in to change notification settings - Fork 0
/
BENCHMARKS
128 lines (112 loc) · 8.37 KB
/
BENCHMARKS
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
Here are some benchmark results.
You can easily run your own benchmarks, as long as you have memcached itself on your system:
$ ruby -e 'system("ruby #{File.dirname(`gem which memcached`.split("\n").
last)}/../test/profile/benchmark.rb")'
== x86-64 OS X
These benchmarks were run on a 64-bit OS X machine, with memcached 1.4.5:
Darwin winter.local 11.3.0 Darwin Kernel Version 11.3.0: Thu Jan 12 18:47:41 PST 2012; root:xnu-1699.24.23~1/RELEASE_X86_64 x86_64
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-darwin11.0.1]
RUBY_VERSION=ruby-1.9.2-p290
Ruby 1.9.2p290
Loaded memcached 1.4.0
Loaded remix-stash 1.1.3
Loaded memcache-client 1.8.5
Loaded kgio 2.6.0
Loaded dalli 1.1.5
PID is 7161
Loops is 50000
Stack depth is 0
Small value size is: 19 bytes
Large value size is: 4189 bytes
user system total real
set: dalli:bin 6.230000 2.860000 9.090000 ( 13.771901)
set: libm:ascii 0.900000 1.600000 2.500000 ( 6.201596)
set: libm:ascii:pipeline 0.380000 0.010000 0.390000 ( 0.399863)
set: libm:ascii:udp 0.540000 0.810000 1.350000 ( 3.033980)
set: libm:bin 0.660000 1.550000 2.210000 ( 5.829103)
set: libm:bin:buffer 0.310000 0.560000 0.870000 ( 1.335899)
set: mclient:ascii 13.760000 3.640000 17.400000 ( 17.519859)
set: stash:bin 4.350000 2.260000 6.610000 ( 10.901810)
get: dalli:bin 6.370000 3.040000 9.410000 ( 13.762127)
get: libm:ascii 1.130000 1.710000 2.840000 ( 6.472671)
get: libm:ascii:pipeline 1.350000 2.480000 3.830000 ( 8.459317)
get: libm:ascii:udp 0.770000 0.910000 1.680000 ( 3.084506)
get: libm:bin 1.450000 2.910000 4.360000 ( 9.041859)
get: libm:bin:buffer 1.390000 3.400000 4.790000 ( 9.160760)
get: mclient:ascii 15.390000 3.890000 19.280000 ( 19.325698)
get: stash:bin 3.630000 2.310000 5.940000 ( 9.561887)
get-multi: dalli:bin 11.220000 4.720000 15.940000 ( 15.977336)
get-multi: libm:ascii 1.150000 1.190000 2.340000 ( 4.063418)
get-multi: libm:ascii:pipeline 1.160000 1.190000 2.350000 ( 4.063346)
get-multi: libm:ascii:udp 1.200000 1.110000 2.310000 ( 2.746055)
get-multi: libm:bin 1.520000 2.320000 3.840000 ( 5.053102)
get-multi: libm:bin:buffer 1.560000 2.350000 3.910000 ( 5.154312)
append: dalli:bin 5.470000 2.930000 8.400000 ( 24.011438)
append: libm:ascii 1.290000 1.790000 3.080000 ( 17.774130)
append: libm:ascii:pipeline 0.450000 0.040000 0.490000 ( 6.633257)
append: libm:ascii:udp 1.070000 0.970000 2.040000 ( 14.307639)
append: libm:bin 1.010000 1.740000 2.750000 ( 17.286027)
append: libm:bin:buffer 1.570000 3.060000 4.630000 ( 11.351744)
append: mclient:ascii 13.860000 4.610000 18.470000 ( 28.063347)
prepend: dalli:bin 5.480000 2.920000 8.400000 ( 24.141383)
prepend: libm:ascii 1.290000 1.800000 3.090000 ( 17.990164)
prepend: libm:ascii:pipeline 0.460000 0.050000 0.510000 ( 6.913219)
prepend: libm:ascii:udp 1.080000 0.970000 2.050000 ( 14.498750)
prepend: libm:bin 1.010000 1.750000 2.760000 ( 17.490186)
prepend: libm:bin:buffer 1.590000 3.030000 4.620000 ( 11.528854)
prepend: mclient:ascii 13.820000 4.590000 18.410000 ( 27.996415)
delete: dalli:bin 5.190000 2.860000 8.050000 ( 12.158696)
delete: libm:ascii 1.730000 1.760000 3.490000 ( 6.891763)
delete: libm:ascii:pipeline 0.270000 0.010000 0.280000 ( 0.286750)
delete: libm:ascii:udp 1.280000 0.960000 2.240000 ( 3.521770)
delete: libm:bin 1.670000 1.730000 3.400000 ( 6.670207)
delete: libm:bin:buffer 1.990000 1.420000 3.410000 ( 3.408682)
delete: mclient:ascii 12.300000 3.440000 15.740000 ( 15.004959)
get-missing: dalli:bin 5.190000 2.900000 8.090000 ( 12.288468)
get-missing: libm:ascii 1.890000 1.930000 3.820000 ( 7.300238)
get-missing: libm:ascii:pipeline 2.000000 2.400000 4.400000 ( 7.861120)
get-missing: libm:ascii:udp 1.420000 1.000000 2.420000 ( 3.684960)
get-missing: libm:bin 2.450000 2.880000 5.330000 ( 9.904413)
get-missing: libm:bin:buffer 2.590000 3.600000 6.190000 ( 10.558657)
get-missing: mclient:ascii 12.610000 3.520000 16.130000 ( 16.112399)
append-missing: dalli:bin 5.440000 2.930000 8.370000 ( 13.119090)
append-missing: libm:ascii 2.060000 2.060000 4.120000 ( 8.168211)
append-missing: libm:ascii:pipeline 0.410000 0.020000 0.430000 ( 0.423779)
append-missing: libm:ascii:udp 1.470000 0.980000 2.450000 ( 4.093117)
append-missing: libm:bin 1.800000 1.880000 3.680000 ( 7.384185)
append-missing: libm:bin:buffer 1.920000 2.500000 4.420000 ( 8.242885)
append-missing: mclient:ascii 12.780000 3.560000 16.340000 ( 16.303513)
prepend-missing: dalli:bin 5.440000 2.940000 8.380000 ( 13.143816)
prepend-missing: libm:ascii 2.060000 2.050000 4.110000 ( 8.207103)
prepend-missing: libm:ascii:pipeline 0.390000 0.010000 0.400000 ( 0.405324)
prepend-missing: libm:ascii:udp 1.480000 0.980000 2.460000 ( 4.100100)
prepend-missing: libm:bin 1.820000 1.910000 3.730000 ( 7.485082)
prepend-missing: libm:bin:buffer 1.930000 2.490000 4.420000 ( 8.220931)
prepend-missing: mclient:ascii 12.750000 3.570000 16.320000 ( 16.327426)
set-large: dalli:bin 8.210000 4.760000 12.970000 ( 20.323687)
set-large: libm:ascii 0.980000 1.690000 2.670000 ( 6.540981)
set-large: libm:ascii:pipeline 0.750000 0.620000 1.370000 ( 1.374806)
set-large: libm:ascii:udp 0.590000 0.880000 1.470000 ( 3.345455)
set-large: libm:bin 0.720000 1.620000 2.340000 ( 6.085282)
set-large: libm:bin:buffer 0.540000 1.000000 1.540000 ( 2.073624)
set-large: mclient:ascii 15.440000 5.050000 20.490000 ( 21.033437)
set-large: stash:bin 6.990000 2.970000 9.960000 ( 14.580058)
get-large: dalli:bin 6.430000 3.050000 9.480000 ( 13.863885)
get-large: libm:ascii 1.280000 1.910000 3.190000 ( 7.413390)
get-large: libm:ascii:pipeline 1.510000 2.690000 4.200000 ( 9.178352)
get-large: libm:ascii:udp 0.940000 1.050000 1.990000 ( 3.705017)
get-large: libm:bin 1.580000 3.140000 4.720000 ( 10.028901)
get-large: libm:bin:buffer 1.550000 3.740000 5.290000 ( 10.237274)
get-large: mclient:ascii 15.090000 3.590000 18.680000 ( 18.686119)
get-large: stash:bin 4.810000 3.010000 7.820000 ( 13.311248)
hash:default 0.540000 0.010000 0.550000 ( 0.537555)
hash:md5 0.910000 0.000000 0.910000 ( 0.914356)
hash:crc 0.620000 0.000000 0.620000 ( 0.624606)
hash:fnv1_64 0.420000 0.000000 0.420000 ( 0.421316)
hash:fnv1a_64 0.380000 0.000000 0.380000 ( 0.376717)
hash:fnv1_32 0.370000 0.000000 0.370000 ( 0.368479)
hash:fnv1a_32 0.350000 0.000000 0.350000 ( 0.353779)
hash:hsieh 0.160000 0.000000 0.160000 ( 0.161812)
hash:murmur 0.220000 0.000000 0.220000 ( 0.220061)
hash:jenkins 0.270000 0.000000 0.270000 ( 0.264617)
hash:none 0.160000 0.000000 0.160000 ( 0.165394)