[redis-benchmark] Adding --seed option to seed the RNG (#11945)
Adds ability to set the random seed so that more consistent repeatable benchmarks are possible. Example usage: Adding 2 hash items ``` src/redis-benchmark -r 100 -n 2 --seed 250 hset myhash:__rand_int__ age __rand_int__ ``` Monitor: 1st benchmark invocation: ``` 1679332814.824357 [0 127.0.0.1:36686] "hset" "myhash:000000000022" "age" "000000000069" 1679332814.824404 [0 127.0.0.1:36690] "hset" "myhash:000000000007" "age" "000000000043" ``` 2nd benchmark invocation: ``` 1679332814.824357 [0 127.0.0.1:36686] "hset" "myhash:000000000022" "age" "000000000069" 1679332814.824404 [0 127.0.0.1:36690] "hset" "myhash:000000000007" "age" "000000000043" ```
This commit is contained in:
parent
f32d1817e3
commit
8163e816fe
@ -1496,6 +1496,11 @@ int parseOptions(int argc, char **argv) {
|
|||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
"WARNING: -e option has no effect. "
|
"WARNING: -e option has no effect. "
|
||||||
"We now immediately exit on error to avoid false results.\n");
|
"We now immediately exit on error to avoid false results.\n");
|
||||||
|
} else if (!strcmp(argv[i],"--seed")) {
|
||||||
|
if (lastarg) goto invalid;
|
||||||
|
int rand_seed = atoi(argv[++i]);
|
||||||
|
srandom(rand_seed);
|
||||||
|
init_genrand64(rand_seed);
|
||||||
} else if (!strcmp(argv[i],"-t")) {
|
} else if (!strcmp(argv[i],"-t")) {
|
||||||
if (lastarg) goto invalid;
|
if (lastarg) goto invalid;
|
||||||
/* We get the list of tests to run as a string in the form
|
/* We get the list of tests to run as a string in the form
|
||||||
@ -1641,7 +1646,8 @@ usage:
|
|||||||
" The -t option is ignored if a specific command is supplied\n"
|
" The -t option is ignored if a specific command is supplied\n"
|
||||||
" on the command line.\n"
|
" on the command line.\n"
|
||||||
" -I Idle mode. Just open N idle connections and wait.\n"
|
" -I Idle mode. Just open N idle connections and wait.\n"
|
||||||
" -x Read last argument from STDIN.\n",
|
" -x Read last argument from STDIN.\n"
|
||||||
|
" --seed <num> Set the seed for random number generator. Default seed is based on time.\n",
|
||||||
tls_usage,
|
tls_usage,
|
||||||
" --help Output this help and exit.\n"
|
" --help Output this help and exit.\n"
|
||||||
" --version Output version and exit.\n\n"
|
" --version Output version and exit.\n\n"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user