aboutsummaryrefslogtreecommitdiffstats
path: root/fbench
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@yahoo-inc.com>2017-06-09 13:57:03 +0000
committerTor Egge <Tor.Egge@yahoo-inc.com>2017-06-09 13:57:03 +0000
commit415e0c386a72efca3a0a5d1c3418e5d929ed7ab8 (patch)
treec79e0bef7b21160c180c87d72c7d243ee9fe3ff2 /fbench
parent8cec7dcc18f268a647cfb5958f62dda864adba1f (diff)
Rename fbench programs to have vespa- prefix.
Temporarily add symlinks from old name to new name.
Diffstat (limited to 'fbench')
-rw-r--r--fbench/CMakeLists.txt2
-rw-r--r--fbench/README60
-rw-r--r--fbench/src/fbench/.gitignore2
-rw-r--r--fbench/src/fbench/CMakeLists.txt2
-rw-r--r--fbench/src/fbench/fbench.cpp4
-rw-r--r--fbench/src/filterfile/.gitignore2
-rw-r--r--fbench/src/filterfile/CMakeLists.txt2
-rw-r--r--fbench/src/filterfile/filterfile.cpp2
-rw-r--r--fbench/src/geturl/.gitignore2
-rw-r--r--fbench/src/geturl/CMakeLists.txt2
-rw-r--r--fbench/src/geturl/geturl.cpp2
-rw-r--r--fbench/src/splitfile/.gitignore2
-rw-r--r--fbench/src/splitfile/CMakeLists.txt2
-rw-r--r--fbench/src/splitfile/splitfile.cpp2
-rwxr-xr-xfbench/util/fbench-formatter.py2
-rwxr-xr-xfbench/util/runtests.sh18
16 files changed, 55 insertions, 53 deletions
diff --git a/fbench/CMakeLists.txt b/fbench/CMakeLists.txt
index f243c8bb51b..a2847c8b8ad 100644
--- a/fbench/CMakeLists.txt
+++ b/fbench/CMakeLists.txt
@@ -11,3 +11,5 @@ vespa_define_module(
TESTS
src/test
)
+
+vespa_install_script(util/resultfilter.pl vespa-resultfilter.pl bin)
diff --git a/fbench/README b/fbench/README
index 688810e0567..cd0d98afbd1 100644
--- a/fbench/README
+++ b/fbench/README
@@ -1,11 +1,11 @@
-fbench - fastserver benchmarking program
-----------------------------------------
+vespa-fbench - fastserver benchmarking program
+----------------------------------------------
-1 Installing fbench
--------------------
+1 Installing vespa-fbench
+-------------------------
-The preferred way of running fbench is to create your own test
+The preferred way of running vespa-fbench is to create your own test
directory where you place all fbench executables and prepare test
files. If you have access to the fbench source, you may consult the
'INSTALL' file for information on how to install fbench. If you have a
@@ -13,21 +13,21 @@ pre-compiled distribution of fbench, simply extract the archive. The
fbench install directory should contain the following set of files:
README
- bin/fbench
- bin/filterfile
- bin/geturl
+ bin/vespa-fbench
+ bin/vespa-filterfile
+ bin/vespa-geturl
bin/plot.pl
bin/pretest.sh
- bin/resultfilter.pl
+ bin/vespa-resultfilter.pl
bin/runtests.sh
bin/separate.pl
- bin/splitfile
+ bin/vespa-fbench-split-file
2 Benchmark overview
--------------------
-fbench measures the performance of the server by running a number of
+vespa-fbench measures the performance of the server by running a number of
clients that send requests to the server in parallel. Each client has
its own input file containing urls that should be requested from the
server. When benchmarking fastserver, the urls contained in these
@@ -92,10 +92,10 @@ files by using the -p switch with the 'splitfile' program.
-----------------------
You are now ready to begin benchmarking. The actual benchmarking is
-done with the fbench program. fbench usage information ([] are used to
+done with the vespa-fbench program. vespa-fbench usage information ([] are used to
mark optional parameters and default values):
-| usage: fbench [-n numClients] [-c cycleTime] [-l limit] [-i ignoreCount]
+| usage: vespa-fbench [-n numClients] [-c cycleTime] [-l limit] [-i ignoreCount]
| [-s seconds] [-q queryFilePattern] [-o outputFilePattern]
| [-r restartLimit] [-k] <hostname> <port>
|
@@ -140,16 +140,16 @@ can (they issue new queries immediately after the results from the
previous query are obtained). Assuming you have at least 200 query
files with default filename pattern you may do the following:
-$ bin/fbench -n 200 -c 0 <host> <port>
+$ bin/vespa-fbench -n 200 -c 0 <host> <port>
This will run the test over a period of 60 seconds. Use the -s option
to change the duration of the test.
Example: You want to manually observe fastserver with a certain amount
-of load. You may use fbench to produce 'background noise' by using the
+of load. You may use vespa-fbench to produce 'background noise' by using the
-s option with argument 0, like this:
-$ bin/fbench -n 50 -c 1000 -s 0 <host> <port>
+$ bin/vespa-fbench -n 50 -c 1000 -s 0 <host> <port>
This will start 50 clients that ask at most 1 query per second each,
giving a maximum load of 50 queries per second if the server allows
@@ -159,7 +159,7 @@ it. This test run will run forever due to the '-s 0' option given.
5 Understanding Benchmarking Results
------------------------------------
-After a test run has completed, fbench outputs various test
+After a test run has completed, vespa-fbench outputs various test
results. This section will explain what each of these numbers mean.
'connection reuse count' This value indicates how many times HTTP
@@ -175,7 +175,7 @@ results. This section will explain what each of these numbers mean.
'lower response limit' Echo of the -l parameter.
'skipped requests' Number of requests that was skipped by
- fbench. fbench will typically skip a request
+ vespa-fbench. vespa-fbench will typically skip a request
if the line containing the query url exceeds
a pre-defined limit. Skipped requests will
have minimal impact on the statistical
@@ -263,32 +263,32 @@ results. This section will explain what each of these numbers mean.
For more complete benchmarking you will want to combine the results
from several test runs and present them together in a graph or maybe a
-spreadsheet. The perl script resultfilter.pl may be used to convert
-the output from fbench into a single line of numbers. Lines of numbers
+spreadsheet. The perl script vespa-resultfilter.pl may be used to convert
+the output from vespa-fbench into a single line of numbers. Lines of numbers
produced from several test runs may then be concatenated into the same
text file and used to plot a graph with gnuplot or imported into an
application accepting structured text files (like Excel).
The task described above is performed by the runtests.sh script. It
-runs fbench several times with varying client count and cycle
+runs vespa-fbench several times with varying client count and cycle
time. Between each test run, the script pretest.sh (located in the bin
directory) is run. The pretest.sh script should make sure that the
server you want to benchmark is in the same state before each of the
test runs. This typically means that the caches should be cleared. The
supplied pretest.sh file does nothing, and should therefore be
modified to fit your needs before you start benchmarking with the
-runtests.sh script. NOTE: 'runtests.sh' must be run from the fbench
+runtests.sh script. NOTE: 'runtests.sh' must be run from the vespa-fbench
install directory in order to find the scripts and programs it depends
-on. (fbench is run as 'bin/fbench' etc.).
+on. (vespa-fbench is run as 'bin/vespa-fbench' etc.).
| usage: runtests.sh [-o] [-l] <minClients> <maxClients> <deltaClients>
-| <minCycle> <maxCycle> <deltaCycle> [fbench options] <hostname> <port>
+| <minCycle> <maxCycle> <deltaCycle> [vespa-fbench options] <hostname> <port>
|
| The number of clients varies from <minClients> to <maxClients> with
| <deltaClients> increments. For each client count, the cycle time will
| vary in the same way according to <minCycle>, <maxCycle> and <deltaCycle>.
-| fbench is run with each combination of client count and cycle time, and
-| the result output is filtered with the 'resultfilter.pl' script.
+| vespa-fbench is run with each combination of client count and cycle time, and
+| the result output is filtered with the 'vespa-resultfilter.pl' script.
| If you want to save the results you should redirect stdout to a file.
|
| -o : change the order in which the tests are performed so that client
@@ -298,12 +298,12 @@ on. (fbench is run as 'bin/fbench' etc.).
| If -o was specified this will output blank lines between test series
| using different cycle time.
|
-| [fbench options] <hostname> <port>: These arguments are passed to fbench.
+| [vespa-fbench options] <hostname> <port>: These arguments are passed to vespa-fbench.
| There are 2 things to remember: first; do not specify either of the -n
| or -c options since they will override the values for client count and
| cycle time generated by this script. secondly; make sure you specify
-| the correct host and port number. See the fbench usage (run fbench
-| without parameters) for more info on how to invoke fbench.
+| the correct host and port number. See the vespa-fbench usage (run vespa-fbench
+| without parameters) for more info on how to invoke vespa-fbench.
Example: You want to see how well fastserver performs with varying
client count and cycle time. Assume that you have already prepared 200
@@ -322,7 +322,7 @@ then do the following:
$ bin/runtests.sh 10 200 10 0 5000 500 -s 300 <host> <port> > result.txt
-The '-s 300' option will be given to fbench causing each test run to
+The '-s 300' option will be given to vespa-fbench causing each test run to
have a duration of 300 seconds = 5 minutes. The standard output is
simply redirected to a file to collect the results for future use.
diff --git a/fbench/src/fbench/.gitignore b/fbench/src/fbench/.gitignore
index 91da6fc795c..6d049d33747 100644
--- a/fbench/src/fbench/.gitignore
+++ b/fbench/src/fbench/.gitignore
@@ -1,5 +1,5 @@
.depend
Makefile
-fbench
+vespa-fbench
fbench.ilk
fbench.pdb
diff --git a/fbench/src/fbench/CMakeLists.txt b/fbench/src/fbench/CMakeLists.txt
index 987d128f66b..85318a69c07 100644
--- a/fbench/src/fbench/CMakeLists.txt
+++ b/fbench/src/fbench/CMakeLists.txt
@@ -3,7 +3,7 @@ vespa_add_executable(fbench_app
SOURCES
client.cpp
fbench.cpp
- OUTPUT_NAME fbench
+ OUTPUT_NAME vespa-fbench
INSTALL bin
DEPENDS
fbench_util
diff --git a/fbench/src/fbench/fbench.cpp b/fbench/src/fbench/fbench.cpp
index 20195d9d234..599ac87233d 100644
--- a/fbench/src/fbench/fbench.cpp
+++ b/fbench/src/fbench/fbench.cpp
@@ -207,7 +207,7 @@ FBench::PrintSummary()
void
FBench::Usage()
{
- printf("usage: fbench [-H extraHeader] [-a queryStringToAppend ] [-n numClients] [-c cycleTime] [-l limit] [-i ignoreCount]\n");
+ printf("usage: vespa-fbench [-H extraHeader] [-a queryStringToAppend ] [-n numClients] [-c cycleTime] [-l limit] [-i ignoreCount]\n");
printf(" [-s seconds] [-q queryFilePattern] [-o outputFilePattern]\n");
printf(" [-r restartLimit] [-m maxLineSize] [-k] <hostname> <port>\n\n");
printf(" -H <str> : append extra header to each get request.\n");
@@ -454,7 +454,7 @@ FBench::Main(int argc, char *argv[])
sleepTimer.Start();
if (seconds % 60 == 0) {
- printf("[dummydate]: PROGRESS: fbench: Seconds left %d\n", seconds);
+ printf("[dummydate]: PROGRESS: vespa-fbench: Seconds left %d\n", seconds);
}
if (printInterval != 0 && seconds % printInterval == 0) {
diff --git a/fbench/src/filterfile/.gitignore b/fbench/src/filterfile/.gitignore
index 097e544e83d..c6ef8978cb6 100644
--- a/fbench/src/filterfile/.gitignore
+++ b/fbench/src/filterfile/.gitignore
@@ -1,5 +1,5 @@
.depend
Makefile
-filterfile
+vespa-fbench-filterfile
filterfile.ilk
filterfile.pdb
diff --git a/fbench/src/filterfile/CMakeLists.txt b/fbench/src/filterfile/CMakeLists.txt
index 42984155cc0..8334cff50e0 100644
--- a/fbench/src/filterfile/CMakeLists.txt
+++ b/fbench/src/filterfile/CMakeLists.txt
@@ -2,7 +2,7 @@
vespa_add_executable(fbench_filterfile_app
SOURCES
filterfile.cpp
- OUTPUT_NAME filterfile
+ OUTPUT_NAME vespa-fbench-filterfile
INSTALL bin
DEPENDS
fbench_util
diff --git a/fbench/src/filterfile/filterfile.cpp b/fbench/src/filterfile/filterfile.cpp
index e72b5b5c02d..3a0a842446e 100644
--- a/fbench/src/filterfile/filterfile.cpp
+++ b/fbench/src/filterfile/filterfile.cpp
@@ -48,7 +48,7 @@ main(int argc, char** argv)
}
if (optError || showUsage) {
- printf("usage: filterfile [-a] [-h] [-m maxLineSize]\n\n");
+ printf("usage: vespa-fbench-filterfile [-a] [-h] [-m maxLineSize]\n\n");
printf("Read concatenated fastserver logs from stdin and write\n");
printf("extracted query urls to stdout.\n\n");
printf(" -a : all parameters to the original query urls are preserved.\n");
diff --git a/fbench/src/geturl/.gitignore b/fbench/src/geturl/.gitignore
index b615c53e087..ad21b60cbde 100644
--- a/fbench/src/geturl/.gitignore
+++ b/fbench/src/geturl/.gitignore
@@ -1,5 +1,5 @@
.depend
Makefile
-geturl
+vespa-geturl
geturl.ilk
geturl.pdb
diff --git a/fbench/src/geturl/CMakeLists.txt b/fbench/src/geturl/CMakeLists.txt
index d9163146dc1..85ae66bc0e3 100644
--- a/fbench/src/geturl/CMakeLists.txt
+++ b/fbench/src/geturl/CMakeLists.txt
@@ -2,7 +2,7 @@
vespa_add_executable(fbench_geturl_app
SOURCES
geturl.cpp
- OUTPUT_NAME geturl
+ OUTPUT_NAME vespa-geturl
INSTALL bin
DEPENDS
fbench_util
diff --git a/fbench/src/geturl/geturl.cpp b/fbench/src/geturl/geturl.cpp
index 5a8b25ec7f5..d6bcdc6dd3b 100644
--- a/fbench/src/geturl/geturl.cpp
+++ b/fbench/src/geturl/geturl.cpp
@@ -6,7 +6,7 @@ int
main(int argc, char** argv)
{
if (argc != 4) {
- printf("usage: geturl <host> <port> <url>\n");
+ printf("usage: vespa-geturl <host> <port> <url>\n");
return -1;
}
diff --git a/fbench/src/splitfile/.gitignore b/fbench/src/splitfile/.gitignore
index 681674c8928..0caff830da7 100644
--- a/fbench/src/splitfile/.gitignore
+++ b/fbench/src/splitfile/.gitignore
@@ -1,5 +1,5 @@
.depend
Makefile
-splitfile
+vespa-fbench-split-file
splitfile.ilk
splitfile.pdb
diff --git a/fbench/src/splitfile/CMakeLists.txt b/fbench/src/splitfile/CMakeLists.txt
index 94c8c5681ff..e7be0d79033 100644
--- a/fbench/src/splitfile/CMakeLists.txt
+++ b/fbench/src/splitfile/CMakeLists.txt
@@ -2,7 +2,7 @@
vespa_add_executable(fbench_splitfile_app
SOURCES
splitfile.cpp
- OUTPUT_NAME splitfile
+ OUTPUT_NAME vespa-fbench-split-file
INSTALL bin
DEPENDS
fbench_util
diff --git a/fbench/src/splitfile/splitfile.cpp b/fbench/src/splitfile/splitfile.cpp
index 001e6c4ed5c..8bd2ddc5c29 100644
--- a/fbench/src/splitfile/splitfile.cpp
+++ b/fbench/src/splitfile/splitfile.cpp
@@ -44,7 +44,7 @@ main(int argc, char** argv)
}
if (argc < (idx + 1) || argc > (idx + 2) || optError) {
- printf("usage: splitfile [-p pattern] [-m maxLineSize] <numparts> [<file>]\n\n");
+ printf("usage: vespa-fbench-split-file [-p pattern] [-m maxLineSize] <numparts> [<file>]\n\n");
printf(" -p pattern : output name pattern ['query%%03d.txt']\n");
printf(" -m <num> : max line size for input/output lines.\n");
printf(" Can not be less than the default [10240]\n");
diff --git a/fbench/util/fbench-formatter.py b/fbench/util/fbench-formatter.py
index 3c7eeca2bb1..75ec43fe7b0 100755
--- a/fbench/util/fbench-formatter.py
+++ b/fbench/util/fbench-formatter.py
@@ -1,6 +1,6 @@
#!/usr/bin/python
# Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-"""Usage: read.py [options] [fbench output file]
+"""Usage: read.py [options] [vespa-fbench output file]
Will read from stdin if no file name is given
diff --git a/fbench/util/runtests.sh b/fbench/util/runtests.sh
index 58b72ae1f86..cc921d96742 100755
--- a/fbench/util/runtests.sh
+++ b/fbench/util/runtests.sh
@@ -17,13 +17,13 @@ done
shift $(($OPTIND - 1))
if [ $# -lt 8 ] || [ "$opt_error" = "true" ]; then
echo "usage: runtests.sh [-o] [-l] <minClients> <maxClients> <deltaClients>"
- echo " <minCycle> <maxCycle> <deltaCycle> [fbench options] <hostname> <port>"
+ echo " <minCycle> <maxCycle> <deltaCycle> [vespa-fbench options] <hostname> <port>"
echo ""
echo "The number of clients varies from <minClients> to <maxClients> with"
echo "<deltaClients> increments. For each client count, the cycle time will"
echo "vary in the same way according to <minCycle>, <maxCycle> and <deltaCycle>."
- echo "fbench is run with each combination of client count and cycle time, and"
- echo "the result output is filtered with the 'resultfilter.pl' script."
+ echo "vespa-fbench is run with each combination of client count and cycle time, and"
+ echo "the result output is filtered with the 'vespa-resultfilter.pl' script."
echo "If you want to save the results you should redirect stdout to a file."
echo ""
echo " -o : change the order in which the tests are performed so that client"
@@ -33,12 +33,12 @@ if [ $# -lt 8 ] || [ "$opt_error" = "true" ]; then
echo " If -o was specified this will output blank lines between test series"
echo " using different cycle time."
echo ""
- echo "[fbench options] <hostname> <port>: These arguments are passed to fbench."
+ echo "[vespa-fbench options] <hostname> <port>: These arguments are passed to vespa-fbench."
echo " There are 2 things to remenber: first; do not specify either of the -n"
echo " or -c options since they will override the values for client count and"
echo " cycle time generated by this script. secondly; make sure you specify"
- echo " the correct host and port number. See the fbench usage (run fbench"
- echo " without parameters) for more info on how to invoke fbench."
+ echo " the correct host and port number. See the vespa-fbench usage (run vespa-fbench"
+ echo " without parameters) for more info on how to invoke vespa-fbench."
exit 1
fi
@@ -59,7 +59,7 @@ if [ ! $deltaCycle -gt 0 ]; then
exit 1
fi
-echo "# fbench results collected by 'runtests.sh'."
+echo "# vespa-fbench results collected by 'runtests.sh'."
echo "#"
echo "#1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20"
echo "#clients duration cycle lowlimit skip fail ok overtime min max avg 25% 50% 75% 90% 95% 99% rate util zerohit"
@@ -71,7 +71,7 @@ if [ "$opt_o" = "true" ]; then
clients=$minClients
while [ ! $clients -gt $maxClients ]; do
test -f pretest.sh && ./pretest.sh > /dev/null 2>&1
- fbench -n $clients -c $cycle $@ | resultfilter.pl
+ vespa-fbench -n $clients -c $cycle $@ | vespa-resultfilter.pl
clients=$(($clients + $deltaClients))
done
[ "$opt_l" = "true" ] && echo ""
@@ -83,7 +83,7 @@ else
cycle=$minCycle
while [ ! $cycle -gt $maxCycle ]; do
test -f pretest.sh && ./pretest.sh > /dev/null 2>&1
- fbench -n $clients -c $cycle $@ | resultfilter.pl
+ vespa-fbench -n $clients -c $cycle $@ | vespa-resultfilter.pl
cycle=$(($cycle + $deltaCycle))
done
[ "$opt_l" = "true" ] && echo ""