forked from arthurnn/memcached
-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathBENCHMARKS
142 lines (124 loc) · 9.31 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
129
130
131
132
133
134
135
136
137
138
139
140
141
142
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.7.2:
Darwin Arthurs-MacBook-Pro.local 13.0.0 Darwin Kernel Version 13.0.0: Thu Sep 19 22:22:27 PDT 2013; root:xnu-2422.1.72~6/RELEASE_X86_64 x86_64
ruby 2.0.0p353 (2013-11-22 revision 43784) [x86_64-darwin13.0.0]
RUBYOPT=-rbundler/setup
RUBYLIB=/Users/arthurnn/.rbenv/versions/2.0.0-p353/lib/ruby/gems/2.0.0/gems/bundler-1.5.1/lib
Ruby 2.0.0p353
Loaded memcached 1.7.2
Loaded remix-stash 1.1.3
Loaded memcache-client 1.8.5
Loaded dalli 2.6.4
PID is 67055
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.440000 2.910000 9.350000 ( 10.563638)
set: libm:ascii 0.790000 1.800000 2.590000 ( 6.383041)
set: libm:ascii:pipeline 0.190000 0.010000 0.200000 ( 0.202092)
set: libm:ascii:udp 0.550000 0.940000 1.490000 ( 3.119734)
set: libm:bin 0.590000 1.790000 2.380000 ( 6.075610)
set: libm:bin:buffer 0.160000 0.440000 0.600000 ( 0.887930)
set: mclient:ascii 6.280000 3.380000 9.660000 ( 10.730003)
set: stash:bin 3.540000 1.990000 5.530000 ( 9.223562)
get: dalli:bin 6.680000 3.390000 10.070000 ( 11.180611)
get: libm:ascii 1.070000 1.830000 2.900000 ( 6.305700)
get: libm:ascii:pipeline 1.240000 2.440000 3.680000 ( 7.115719)
get: libm:ascii:udp 0.830000 1.020000 1.850000 ( 3.171187)
get: libm:bin 0.850000 2.290000 3.140000 ( 6.281492)
get: libm:bin:buffer 0.840000 2.600000 3.440000 ( 6.200500)
get: mclient:ascii 8.070000 3.530000 11.600000 ( 12.345600)
get: stash:bin 3.090000 2.100000 5.190000 ( 8.480606)
get-multi: dalli:bin 5.930000 2.180000 8.110000 ( 8.108164)
get-multi: libm:ascii 0.940000 0.970000 1.910000 ( 2.837050)
get-multi: libm:ascii:pipeline 0.940000 0.970000 1.910000 ( 2.824970)
get-multi: libm:ascii:udp 0.780000 0.610000 1.390000 ( 1.639728)
get-multi: libm:bin 0.750000 1.570000 2.320000 ( 3.138594)
get-multi: libm:bin:buffer 0.770000 1.610000 2.380000 ( 3.192629)
append: dalli:bin 5.740000 2.980000 8.720000 ( 16.344137)
append: libm:ascii 1.020000 1.950000 2.970000 ( 12.789710)
append: libm:ascii:pipeline 0.230000 0.070000 0.300000 ( 3.346092)
append: libm:ascii:udp 0.770000 1.100000 1.870000 ( 9.013537)
append: libm:bin 0.800000 1.950000 2.750000 ( 12.440546)
append: libm:bin:buffer 0.600000 1.570000 2.170000 ( 4.633185)
append: mclient:ascii 6.330000 3.470000 9.800000 ( 17.164551)
prepend: dalli:bin 5.710000 2.840000 8.550000 ( 16.196913)
prepend: libm:ascii 1.040000 1.970000 3.010000 ( 13.116495)
prepend: libm:ascii:pipeline 0.230000 0.060000 0.290000 ( 3.606279)
prepend: libm:ascii:udp 0.760000 1.090000 1.850000 ( 10.152684)
prepend: libm:bin 0.790000 1.880000 2.670000 ( 12.556400)
prepend: libm:bin:buffer 0.600000 1.600000 2.200000 ( 5.044049)
prepend: mclient:ascii 6.350000 3.440000 9.790000 ( 17.142962)
delete: dalli:bin 5.800000 2.980000 8.780000 ( 9.778920)
delete: libm:ascii 1.420000 1.990000 3.410000 ( 6.912480)
delete: libm:ascii:pipeline 0.130000 0.010000 0.140000 ( 0.139597)
delete: libm:ascii:udp 1.050000 1.030000 2.080000 ( 3.356582)
delete: libm:bin 1.350000 1.940000 3.290000 ( 6.627281)
delete: libm:bin:buffer 0.840000 0.900000 1.740000 ( 1.812440)
delete: mclient:ascii 5.980000 3.260000 9.240000 ( 9.918309)
exist: dalli:bin 6.680000 3.420000 10.100000 ( 11.182683)
exist: libm:ascii 0.580000 1.810000 2.390000 ( 6.127155)
exist: libm:ascii:pipeline 1.110000 2.390000 3.500000 ( 6.927549)
exist: libm:ascii:udp 0.360000 0.920000 1.280000 ( 2.827431)
exist: libm:bin 0.540000 1.760000 2.300000 ( 5.829209)
exist: libm:bin:buffer 0.330000 1.030000 1.360000 ( 1.668925)
get-missing: dalli:bin 5.800000 2.760000 8.560000 ( 9.562492)
get-missing: libm:ascii 1.500000 1.950000 3.450000 ( 6.884550)
get-missing: libm:ascii:pipeline 1.550000 2.690000 4.240000 ( 7.153775)
get-missing: libm:ascii:udp 1.170000 1.220000 2.390000 ( 3.620543)
get-missing: libm:bin 1.570000 2.520000 4.090000 ( 7.067088)
get-missing: libm:bin:buffer 1.510000 2.690000 4.200000 ( 6.904890)
get-missing: mclient:ascii 6.040000 3.230000 9.270000 ( 9.908836)
append-missing: dalli:bin 5.830000 3.140000 8.970000 ( 10.275904)
append-missing: libm:ascii 1.750000 2.150000 3.900000 ( 7.840195)
append-missing: libm:ascii:pipeline 0.210000 0.050000 0.260000 ( 0.260620)
append-missing: libm:ascii:udp 1.270000 1.180000 2.450000 ( 3.927083)
append-missing: libm:bin 1.490000 2.080000 3.570000 ( 7.330363)
append-missing: libm:bin:buffer 1.560000 2.520000 4.080000 ( 7.541846)
append-missing: mclient:ascii 6.180000 3.290000 9.470000 ( 10.531754)
prepend-missing: dalli:bin 5.830000 3.180000 9.010000 ( 10.289729)
prepend-missing: libm:ascii 1.780000 2.210000 3.990000 ( 7.993564)
prepend-missing: libm:ascii:pipeline 0.210000 0.060000 0.270000 ( 0.274244)
prepend-missing: libm:ascii:udp 1.260000 1.190000 2.450000 ( 3.898849)
prepend-missing: libm:bin 1.470000 2.100000 3.570000 ( 7.282732)
prepend-missing: libm:bin:buffer 1.560000 2.540000 4.100000 ( 7.578402)
prepend-missing: mclient:ascii 6.180000 3.280000 9.460000 ( 10.530963)
exist-missing: dalli:bin 6.000000 3.140000 9.140000 ( 10.188436)
exist-missing: libm:ascii 0.940000 1.990000 2.930000 ( 6.798681)
exist-missing: libm:ascii:pipeline 1.020000 2.390000 3.410000 ( 6.467459)
exist-missing: libm:ascii:udp 0.610000 1.060000 1.670000 ( 3.301365)
exist-missing: libm:bin 0.920000 2.000000 2.920000 ( 6.681597)
exist-missing: libm:bin:buffer 1.040000 2.540000 3.580000 ( 7.287630)
set-large: dalli:bin 7.100000 3.370000 10.470000 ( 11.795271)
set-large: libm:ascii 0.860000 1.850000 2.710000 ( 6.650196)
set-large: libm:ascii:pipeline 0.300000 0.270000 0.570000 ( 0.586590)
set-large: libm:ascii:udp 0.580000 0.970000 1.550000 ( 3.266937)
set-large: libm:bin 0.630000 1.800000 2.430000 ( 6.203372)
set-large: libm:bin:buffer 0.260000 0.680000 0.940000 ( 1.260024)
set-large: mclient:ascii 6.680000 3.700000 10.380000 ( 11.808357)
set-large: stash:bin 5.080000 2.520000 7.600000 ( 11.345483)
get-large: dalli:bin 6.740000 3.700000 10.440000 ( 11.605284)
get-large: libm:ascii 1.080000 1.860000 2.940000 ( 6.403185)
get-large: libm:ascii:pipeline 1.200000 2.350000 3.550000 ( 6.870392)
get-large: libm:ascii:udp 0.810000 1.020000 1.830000 ( 3.129513)
get-large: libm:bin 0.810000 2.150000 2.960000 ( 5.941723)
get-large: libm:bin:buffer 0.790000 2.410000 3.200000 ( 5.724441)
get-large: mclient:ascii 8.150000 3.240000 11.390000 ( 12.305832)
get-large: stash:bin 3.140000 2.130000 5.270000 ( 8.635335)
hash:default 0.330000 0.000000 0.330000 ( 0.328978)
hash:md5 0.630000 0.000000 0.630000 ( 0.631381)
hash:crc 0.380000 0.000000 0.380000 ( 0.376241)
hash:fnv1_64 0.240000 0.000000 0.240000 ( 0.242814)
hash:fnv1a_64 0.250000 0.000000 0.250000 ( 0.245082)
hash:fnv1_32 0.240000 0.000000 0.240000 ( 0.242794)
hash:fnv1a_32 0.250000 0.000000 0.250000 ( 0.245309)
hash:hsieh 0.090000 0.000000 0.090000 ( 0.096613)
hash:murmur 0.150000 0.000000 0.150000 ( 0.145111)
hash:jenkins 0.160000 0.000000 0.160000 ( 0.161225)
hash:none 0.100000 0.000000 0.100000 ( 0.097352)