Statistics
| Branch: | Tag: | Revision:

root / xseg / peers / user / bench-utils.c @ 6652c5b8

History | View | Annotate | Download (6.6 kB)

# Date Author Comment
7221f231 07/19/2013 05:06 pm Alex Pyrgiotis

bench: Break large source file into smaller files

The bench-utils.c file started to have utilities that could stand
semantically under a separate category. Namely, verification is now at
bench-verify.c and progress report under bench-report.c.

4d649d6f 07/19/2013 05:06 pm Alex Pyrgiotis

bench: Create separate option for progress type

Progress type option is now decoupled from the progress option. This
paves the way for silent progress reports.

f7548435 07/18/2013 01:02 pm Alex Pyrgiotis

bench: Ping target peer before starting timers

In some cases, the target peer may take some time before it finishes
with its initializations. Since we don't want to measure this idle time,
we send a ping request first and can start start the benchmark after we...

d00bfb03 07/18/2013 01:02 pm Alex Pyrgiotis

bench: Fix minor validation issue

7456427f 07/18/2013 01:02 pm Alex Pyrgiotis

bench: Add --prefix option

The --prefix option allows the user to choose whatever prefix he/she
wants for the object names that will be generated.

This commit also cleans code that has to do with seeding and creating
object names. It also paves the way for the --objname option.

296566bc 07/18/2013 01:02 pm Alex Pyrgiotis

bench: Handle progress report better

Pave the way to include bandwidth/IOPS results during progress report

b507a842 07/18/2013 01:02 pm Alex Pyrgiotis

bench: Introduce new progress report and intervals

This commit renews the progress report that bench has by allowing to
report bandwidth results during benchmark.

Also, an additional functionality is that of report intervals. Report
intervals allow the user to choose exactly when progress report will be...

99128836 07/18/2013 01:02 pm Alex Pyrgiotis

bench: Fix data verification

Current situation: In full verification mode, each number written across
a data chunk has 64 bits length, yet, due to a wrong LFSR
initialization, only 31 bits are utilized.

Implement a 63/64 bits utilization.

bb953571 07/18/2013 01:02 pm Alex Pyrgiotis

bench: Minor correction on seed validation

a57ab6e1 07/18/2013 01:02 pm Alex Pyrgiotis

bench: Improve benchmark results

Changes include:

  • Show the average request latency when run with insanity "eccentric"
  • Don't show bandwidth results for info/delete requests
7e21df56 06/03/2013 05:46 pm Filippos Giannakos

bench: Fix target to not include null termination.

Request of the target must not be null terminated. Remove null termination from
the requests constructed by peers.

601b64fa 04/23/2013 04:39 pm Alex Pyrgiotis

bench: Flush stdout when printing progress results

34dbf8a6 04/18/2013 06:39 pm Alex Pyrgiotis

bench: Fix issuing of read/write requests

Due to no initialization of struct bench, some "ifs" in the code would
show different behavior depending on the junk values they would check.
Now however, there is proper initialization of struct bench.

a80c60b6 04/18/2013 06:39 pm Alex Pyrgiotis

Add progress report for bench

Progress report is turned on by default. It reports every 5% the current
request status.
Also, we now make sure to terminate only if all peer requests are free.

1a2f3688 04/18/2013 06:39 pm Alex Pyrgiotis

bench: Change prefixes of static functions

In this repo, a static helpder function is prefixed with "__". However,
some static helper functions in bench-utils.c where prefixed with a
single underscore ("_"), so we updated their names to be consistent with...

a640985b 04/18/2013 06:39 pm Alex Pyrgiotis

bench: Include bandwidth and IOPS in results

181d4caa 03/13/2013 06:04 pm Alex Pyrgiotis

Style changes

ce8bfb92 03/13/2013 06:00 pm Alex Pyrgiotis

Add option for read/write ops to hit unique objs

Read/write ops can now use the -to option, instead of the -ts option, to
make each read/write request touch a different object.

994b2e81 03/13/2013 01:52 pm Alex Pyrgiotis

Fix verification full mode

b28fa3e7 03/12/2013 06:53 pm Alex Pyrgiotis

Improve LFSR implementation

Also, prepare the code for the addition of verification support

a6924f16 03/12/2013 06:53 pm Alex Pyrgiotis

Add skeleton for verification in write path

28a16745 03/12/2013 06:53 pm Alex Pyrgiotis

Refactor struct bench and appropriate code paths

Changes:

1. Move flag values (such as pattern, insanity, verify) in a specific
bit-field.
2. Create a struct req_status where the status of requests will be
stored.
3. Tidy up code.

Rationale:

1. For parameters that can have only a few different values, it's an...

17a413b7 03/12/2013 06:53 pm Alex Pyrgiotis

Add partial support for verification

Adds an option to choose between verification modes:

1. meta: On this mode, we write our signature both at the start and the
end of the chunk size. It should be very fast and moderately safe,
due to the fact that corruptions happen it the chunk's edges....

4fbcea7d 03/11/2013 11:52 am Alex Pyrgiotis

Minor fixes

29a2d904 03/11/2013 11:52 am Alex Pyrgiotis

Add support for seed values given by the user

A new option has been added (--seed) which allows the user to pre-define
the seed that he/she wants. This has the following effects:

  • The target names are prefixed with the first 9 digits of the seed.
  • LFSR produces a predictable sequence of "random" numbers
d38b3cda 03/11/2013 11:52 am Alex Pyrgiotis

Print more useful results

c297e34a 03/11/2013 11:52 am Alex Pyrgiotis

Fix incorrect reading of "insanity" parameter

58b941b9 03/11/2013 11:52 am Alex Pyrgiotis

Fix LFSR behavior

a2176832 03/11/2013 11:52 am Alex Pyrgiotis

Tweak performance of bench

35afde18 03/11/2013 11:52 am Alex Pyrgiotis

Implement most semi-finished functionalities

Summary of new functionalities:

  • Add support for 4 different xseg operations (read, write, info,
    delete).
  • Add support for random I/O patterns with a fast Galois LFSR.
  • Add insanity levels in timers, which allow the user to exclude obscure...
21051060 03/11/2013 11:52 am Alex Pyrgiotis

Increment completed requests of insane timers

Even if a timer is not used for a benchmark, we need to increment its
completed requests since these are needed to calculate how many requests
are left etc.

5957e816 03/11/2013 11:52 am Alex Pyrgiotis

Fix target names and chunk offsets

b39f8ff2 03/11/2013 11:52 am Alex Pyrgiotis

Fix flag handling of struct bench

955151e6 03/11/2013 11:52 am Alex Pyrgiotis

Design the program's skeleton for new features

Bench peer must be able to test all xseg operations in a synchronous or
asynchronous way. Also, it must have a validation mode to sanity-check
if xseg requests are issued properly. Most of the above are present in...

b003d80d 03/11/2013 11:52 am Alex Pyrgiotis

Add utility functions to header file