forked from arthurnn/memcached
-
Notifications
You must be signed in to change notification settings - Fork 0
/
BENCHMARKS
134 lines (117 loc) · 8.39 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
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 amber.local 10.6.0 Darwin Kernel Version 10.6.0: Wed Nov 10 18:13:17
PST 2010; root:xnu-1504.9.26~3/RELEASE_I386 i386
ruby 1.8.7 (2010-04-19 patchlevel 253) [i686-darwin10.4.0], MBARI 0x6770,
Ruby Enterprise Edition 2010.02
RUBY_HEAP_FREE_MIN=4096
RUBY_HEAP_MIN_SLOTS=500000
RUBY_HEAP_SLOTS_INCREMENT=250000
RUBY_GC_MALLOC_LIMIT=50000000
RUBY_HEAP_SLOTS_GROWTH_FACTOR=1
RUBY_VERSION=ree-1.8.7-2010.02
Ruby 1.8.7p253
Loaded memcached 1.1.1
Loaded remix-stash 1.1.3
Loaded memcache-client 1.8.5
Loaded kgio 2.0.0
Loaded dalli 1.0.2
PID is 21173
Loops is 20000
Stack depth is 0
Small value size is: 13 bytes
Large value size is: 4158 bytes
user system total real
set: libm:ascii 0.600000 0.960000 1.560000 ( 3.790868)
set: libm:ascii:pipeline 0.230000 0.010000 0.240000 ( 0.240365)
set: libm:ascii:udp 0.530000 0.580000 1.110000 ( 2.573610)
set: libm:bin 0.480000 0.860000 1.340000 ( 3.355849)
set: libm:bin:buffer 0.250000 0.100000 0.350000 ( 0.859416)
set: dalli:bin 4.270000 1.380000 5.650000 ( 7.673922)
set: mclient:ascii 7.020000 1.920000 8.940000 ( 9.739894)
set: stash:bin 2.640000 1.060000 3.700000 ( 6.100208)
get: libm:ascii 0.830000 0.990000 1.820000 ( 3.912925)
get: libm:ascii:pipeline 0.780000 1.070000 1.850000 ( 4.166414)
get: libm:ascii:udp 0.680000 0.620000 1.300000 ( 2.872687)
get: libm:bin 0.690000 1.020000 1.710000 ( 3.588579)
get: libm:bin:buffer 0.690000 1.210000 1.900000 ( 3.927647)
get: dalli:bin 4.530000 1.490000 6.020000 ( 8.197772)
get: mclient:ascii 8.660000 1.870000 10.530000 ( 11.176572)
get: stash:bin 2.310000 1.000000 3.310000 ( 5.581331)
get-multi: libm:ascii 0.650000 0.560000 1.210000 ( 2.101080)
get-multi: libm:ascii:pipeline 0.750000 0.560000 1.310000 ( 2.188553)
get-multi: libm:ascii:udp 0.710000 0.470000 1.180000 ( 1.680744)
get-multi: libm:bin 0.730000 0.800000 1.530000 ( 4.046271)
get-multi: libm:bin:buffer 0.710000 0.670000 1.380000 ( 2.853617)
get-multi: dalli:bin 7.700000 2.190000 9.890000 ( 10.021851)
append: libm:ascii 0.740000 1.000000 1.740000 ( 5.609197)
append: libm:ascii:pipeline 0.250000 0.010000 0.260000 ( 0.875205)
append: libm:ascii:udp 0.570000 0.560000 1.130000 ( 4.695231)
append: libm:bin 0.540000 0.900000 1.440000 ( 4.962085)
append: libm:bin:buffer 0.560000 0.780000 1.340000 ( 2.669085)
append: dalli:bin 3.620000 1.240000 4.860000 ( 8.718248)
append: mclient:ascii 7.220000 1.750000 8.970000 ( 11.657408)
prepend: libm:ascii 0.660000 1.040000 1.700000 ( 5.461676)
prepend: libm:ascii:pipeline 0.260000 0.010000 0.270000 ( 0.760103)
prepend: libm:ascii:udp 0.670000 0.600000 1.270000 ( 4.324850)
prepend: libm:bin 0.560000 0.900000 1.460000 ( 5.801869)
prepend: libm:bin:buffer 0.530000 0.800000 1.330000 ( 3.631074)
prepend: dalli:bin 3.620000 1.240000 4.860000 ( 8.531561)
prepend: mclient:ascii 6.400000 1.590000 7.990000 ( 12.047692)
delete: libm:ascii 1.350000 0.920000 2.270000 ( 4.693438)
delete: libm:ascii:pipeline 0.320000 0.320000 0.640000 ( 0.706662)
delete: libm:ascii:udp 1.270000 0.660000 1.930000 ( 3.851781)
delete: libm:bin 1.190000 0.960000 2.150000 ( 4.456707)
delete: libm:bin:buffer 0.230000 0.250000 0.480000 ( 0.911735)
delete: dalli:bin 3.850000 1.440000 5.290000 ( 7.160706)
delete: mclient:ascii 7.270000 1.670000 8.940000 ( 9.618969)
get-missing: libm:ascii 1.430000 0.970000 2.400000 ( 4.982100)
get-missing: libm:ascii:pipeline 1.480000 1.200000 2.680000 ( 5.505560)
get-missing: libm:ascii:udp 1.340000 0.690000 2.030000 ( 3.706029)
get-missing: libm:bin 1.390000 0.960000 2.350000 ( 4.676127)
get-missing: libm:bin:buffer 1.460000 1.230000 2.690000 ( 5.048332)
get-missing: dalli:bin 3.810000 1.380000 5.190000 ( 7.874001)
get-missing: mclient:ascii 6.920000 1.600000 8.520000 ( 9.999317)
append-missing: libm:ascii 1.370000 0.990000 2.360000 ( 5.073530)
append-missing: libm:ascii:pipeline 0.330000 0.010000 0.340000 ( 0.374423)
append-missing: libm:ascii:udp 1.300000 0.690000 1.990000 ( 4.005369)
append-missing: libm:bin 1.340000 0.920000 2.260000 ( 5.339037)
append-missing: dalli:bin 4.020000 1.420000 5.440000 ( 8.193874)
append-missing: mclient:ascii 6.930000 1.630000 8.560000 ( 10.637547)
prepend-missing: libm:ascii 1.460000 0.970000 2.430000 ( 5.002199)
prepend-missing: libm:ascii:pipeline 0.240000 0.010000 0.250000 ( 0.253590)
prepend-missing: libm:ascii:udp 1.370000 0.710000 2.080000 ( 4.243274)
prepend-missing: libm:bin 1.360000 0.950000 2.310000 ( 4.946014)
prepend-missing: dalli:bin 3.910000 1.430000 5.340000 ( 7.407236)
prepend-missing: mclient:ascii 7.380000 1.730000 9.110000 ( 10.140385)
set-large: libm:ascii 0.670000 0.980000 1.650000 ( 5.181314)
set-large: libm:ascii:pipeline 0.410000 0.330000 0.740000 ( 1.757769)
set-large: libm:ascii:udp 0.590000 0.670000 1.260000 ( 3.510175)
set-large: libm:bin 0.540000 0.980000 1.520000 ( 3.878854)
set-large: libm:bin:buffer 0.350000 0.440000 0.790000 ( 2.036610)
set-large: dalli:bin 5.010000 1.670000 6.680000 ( 9.884379)
set-large: mclient:ascii 7.500000 2.130000 9.630000 ( 11.357448)
set-large: stash:bin 3.920000 1.130000 5.050000 ( 7.488534)
get-large: libm:ascii 0.760000 0.950000 1.710000 ( 4.151140)
get-large: libm:ascii:pipeline 0.820000 1.190000 2.010000 ( 4.079482)
get-large: libm:ascii:udp 0.770000 0.580000 1.350000 ( 2.763797)
get-large: libm:bin 0.640000 0.970000 1.610000 ( 3.686591)
get-large: libm:bin:buffer 0.690000 1.110000 1.800000 ( 3.974967)
get-large: dalli:bin 4.710000 1.430000 6.140000 ( 8.011834)
get-large: mclient:ascii 8.860000 1.970000 10.830000 ( 12.136812)
get-large: stash:bin 2.420000 0.970000 3.390000 ( 5.643309)
hash:murmur 0.250000 0.000000 0.250000 ( 0.250730)
hash:md5 0.670000 0.000000 0.670000 ( 0.680286)
hash:fnv1a_64 0.320000 0.000000 0.320000 ( 0.319818)
hash:fnv1a_32 0.310000 0.000000 0.310000 ( 0.328325)
hash:jenkins 0.270000 0.010000 0.280000 ( 0.270705)
hash:default 0.410000 0.000000 0.410000 ( 0.412068)
hash:crc 0.380000 0.000000 0.380000 ( 0.377563)
hash:hsieh 0.210000 0.000000 0.210000 ( 0.212948)
hash:fnv1_32 0.310000 0.000000 0.310000 ( 0.316208)
hash:fnv1_64 0.450000 0.000000 0.450000 ( 0.453148)
hash:none 0.210000 0.000000 0.210000 ( 0.213811)