Commit Graph

33 Commits

Author SHA1 Message Date
Jacob Leverich
fd290fe04d Oops, wasn't setting CPPFLAGS. 2013-07-10 11:09:31 -07:00
Jacob Leverich
2d4d477a3f Minor SCons cleanup 2013-07-01 10:29:49 -07:00
Jacob Leverich
da45ef0d79 Detect if we need to use libevent EVENT_BASE_FLAG_PRECISE_TIMER 2013-07-01 10:27:38 -07:00
Jacob Leverich
d7a1ada9d3 Option to save latency measurements to a file. 2013-07-01 10:08:16 -07:00
Jacob Leverich
ebd96ada3c Misc. experimental features. (1) thread affinity (2) event_base_flag_precise_timer (3) configurable agent port (4) per-connection qps moderation 2013-04-15 13:27:06 -07:00
Jacob Leverich
86ad565956 Updated sync_agent() to be less ridiculous. Still ridiculous, though. 2013-03-13 16:58:36 -07:00
Jacob Leverich
08b2e81c86 Change --skip behavior to only jump ahead if the tx time is at least 5ms (hardcoded for now) behind. Always pacing with timer events was causing it to severely miss QPS targets... 2013-03-13 15:40:00 -07:00
Jacob Leverich
0b3abadab1 --skip: pass option with options_t to agents 2013-03-12 15:33:44 -07:00
Jacob Leverich
eb72e0d2ce Minor beautification. 2013-03-12 15:29:43 -07:00
Jacob Leverich
7ca3e57c6d Add --skip option: By default, mutilate tries to maintain a long-term QPS average by issuing requests as quickly as possible until it catches up with where it 'ought' to be. If you give the --skip option, it will instead just skip sending requests that are already late. 2013-03-12 15:27:29 -07:00
Jacob Leverich
a8168f28dc Clean out some dead code. 2013-03-11 22:14:24 -07:00
Jacob Leverich
fc0f1a78a4 1. Implemented --measure_* options to reasonably separate
configuration of measurement client (mutilate master) from
load generating clients (mutilate agents).  Use -C and
--measure_depth to approximate open-loop measurement control
(i.e. so long latency requests don't screw up the sample
population), and use -Q to ensure that you see minimal
client-side queuing delay.

2. Quickly documented agent "protocol".  Lots of improvement
to be had here...
2013-03-08 13:19:47 -08:00
Jacob Leverich
960b30dc7b Add -M (measure-mode), where master client only opens 1 connection per thread (to avoid client-side queuing delay). 2013-03-06 21:55:24 -08:00
Jacob Leverich
571dc0bd07 Report nth-% latency at start of --search. 2013-03-04 14:34:19 -08:00
Jacob Leverich
7e74898c4a Remove unused useBinary class variable. 2013-03-04 14:23:50 -08:00
Jacob Leverich
4e8d2f6d10 Merged Stephen Yang's and David Terei's binary protocol and SASL implementations.
I ended up cherry-picking different parts from each implementation.
I liked David's changes to the read state machine to implement SASL.
I used Stephene's implementation of the binary protocol integrated with
the ASCII protocol.
2013-03-04 09:31:13 -08:00
Stephen Yang
ff6987e8d7 Fixed g++ compile error. 2013-03-02 06:17:53 -08:00
Stephen Yang
8658d6cbc4 Added binary plaintext SASL support, toggable with --sasl=user[:pass] 2013-03-02 05:46:39 -08:00
Stephen Yang
d3fa8769ae Added binary support, toggable via --binary. 2013-03-01 05:36:35 -08:00
Jacob Leverich
6ffebb2ec7 Change --search behavior to abort once goodput qps is < 10% of peak qps. 2013-02-02 17:59:37 -08:00
leverich
973ef24eca Merge pull request #1 from dterei/master
Fix compilation on OSX.
2013-02-02 17:52:53 -08:00
David Terei
e0f2e922a4 Fix compilation on OSX. 2013-01-30 19:46:39 -08:00
Jacob Leverich
ac74a6ae40 Indentation for command-line options. 2013-01-18 14:29:57 -08:00
Jacob Leverich
5a0fd63455 Merge branch 'master' of https://github.com/leverich/mutilate 2013-01-18 14:26:52 -08:00
Jacob Leverich
f33fa6222f Added command-line options to README. 2013-01-18 14:25:59 -08:00
Jacob Leverich
cb9384c369 Minor bugfixes to SConstruct. 2012-12-26 17:50:27 -07:00
Jacob Leverich
3a538f4b00 Implement a log-based histogram sampler to increase fidelity for small samples and maximum range for large samples. 2012-12-26 17:08:00 -07:00
Jacob Leverich
46015b29ac Added location parameter to GPareto distribution. Validated value-size distribution against Atikoglu's paper by comparing CDF and PDF. 2012-08-24 14:02:57 -07:00
Jacob Leverich
1417bd4b01 Minor compatibility note. 2012-08-23 14:54:09 -07:00
Jacob Leverich
e2db44d0f7 Basic usage documentation. 2012-08-23 14:51:48 -07:00
Jacob Leverich
1a8a706eb6 Build requirements. 2012-08-23 14:42:56 -07:00
Jacob Leverich
386320d266 Initial check-in.
This is extracted from another git repo.  This is the first release, and
the prior commit history is not terribly interesting, so I'm not going
to bother using filter-branch to try to cleanly isolate the history for
this tool.

Cheers.
2012-08-23 14:30:32 -07:00
leverich
bcad3cfbc3 Initial commit 2012-08-20 11:11:01 -07:00