Added command-line options to README.
This commit is contained in:
parent
46015b29ac
commit
f33fa6222f
73
README.md
73
README.md
@ -63,3 +63,76 @@ remote agents.
|
||||
RX 393609073 bytes : 75.1 MB/s
|
||||
TX 57374136 bytes : 10.9 MB/s
|
||||
|
||||
Command-line Options
|
||||
====================
|
||||
Usage: mutilate -s server[:port] [options]
|
||||
|
||||
"High-performance" memcached benchmarking tool
|
||||
|
||||
-h, --help Print help and exit
|
||||
--version Print version and exit
|
||||
-v, --verbose Verbosity. Repeat for more verbose.
|
||||
--quiet Disable log messages.
|
||||
|
||||
Basic options:
|
||||
-s, --server=STRING Memcached server hostname[:port]. Repeat to specify
|
||||
multiple servers.
|
||||
-q, --qps=INT Target aggregate QPS. 0 = peak QPS. (default=`0')
|
||||
-t, --time=INT Maximum time to run (seconds). (default=`5')
|
||||
-K, --keysize=STRING Length of memcached keys (distribution).
|
||||
(default=`30')
|
||||
-V, --valuesize=STRING Length of memcached values (distribution).
|
||||
(default=`200')
|
||||
-r, --records=INT Number of memcached records to use. If multiple
|
||||
memcached servers are given, this number is
|
||||
divided by the number of servers.
|
||||
(default=`10000')
|
||||
-u, --update=FLOAT Ratio of set:get commands. (default=`0.0')
|
||||
|
||||
Advanced options:
|
||||
-T, --threads=INT Number of threads to spawn. (default=`1')
|
||||
-c, --connections=INT Connections to establish per server. (default=`1')
|
||||
-d, --depth=INT Maximum depth to pipeline requests. (default=`1')
|
||||
-R, --roundrobin Assign threads to servers in round-robin fashion.
|
||||
By default, each thread connects to every server.
|
||||
-i, --iadist=STRING Inter-arrival distribution (distribution). Note:
|
||||
The distribution will automatically be adjusted to
|
||||
match the QPS given by --qps.
|
||||
(default=`exponential')
|
||||
--noload Skip database loading.
|
||||
--loadonly Load database and then exit.
|
||||
-B, --blocking Use blocking epoll(). May increase latency.
|
||||
-D, --no_nodelay Don't use TCP_NODELAY.
|
||||
-w, --warmup=INT Warmup time before starting measurement.
|
||||
-W, --wait=INT Time to wait after startup to start measurement.
|
||||
-S, --search=N:X Search for the QPS where N-order statistic < Xus.
|
||||
(i.e. --search 95:1000 means find the QPS where
|
||||
95% of requests are faster than 1000us).
|
||||
--scan=min:max:step Scan latency across QPS rates from min to max.
|
||||
|
||||
Agent-mode options:
|
||||
-A, --agentmode Run client in agent mode.
|
||||
-a, --agent=host Enlist remote agent.
|
||||
-l, --lambda_mul=INT Lambda multiplier. Increases share of QPS for this
|
||||
client. (default=`1')
|
||||
|
||||
Some options take a 'distribution' as an argument.
|
||||
Distributions are specified by <distribution>[:<param1>[,...]].
|
||||
Parameters are not required. The following distributions are supported:
|
||||
|
||||
[fixed:]<value> Always generates <value>.
|
||||
uniform:<max> Uniform distribution between 0 and <max>.
|
||||
normal:<mean>,<sd> Normal distribution.
|
||||
exponential:<lambda> Exponential distribution.
|
||||
pareto:<loc>,<scale>,<shape> Generalized Pareto distribution.
|
||||
gev:<loc>,<scale>,<shape> Generalized Extreme Value distribution.
|
||||
|
||||
To recreate the Facebook "ETC" request stream from [1], the
|
||||
following hard-coded distributions are also provided:
|
||||
|
||||
fb_value = a hard-coded discrete and GPareto PDF of value sizes
|
||||
fb_key = "gev:30.7984,8.20449,0.078688", key-size distribution
|
||||
fb_ia = "pareto:0.0,16.0292,0.154971", inter-arrival time dist.
|
||||
|
||||
[1] Berk Atikoglu et al., Workload Analysis of a Large-Scale Key-Value Store,
|
||||
SIGMETRICS 2012
|
||||
|
Loading…
Reference in New Issue
Block a user