minio / warp

S3 benchmarking tool

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Request enhancement for "warp --analyze" to use common output format for single and multi op results

russfellows opened this issue · comments

Request for Enhancement:

Warp’s resulting text output of the “—analyze” command is inconsistent. The inconsistency occurs when processing either single operation .zst files, or multi operation files. Also, for single operation result output, you provide additional information such as throughput, and object operations per second. These are NOT provided with multi operation result outputs. One simple remedy would be to utilize the exact same output format, ideally including the throughput for both. Note, there are several places where these differences occur, making processing of the results extremely difficult. Examples included below:

Difference #1:
After the “Operations loaded… Done!” line, the next line is different,
For single op types, there is a blank line, followed by a line of dashes “- - - - “
For a multi op type, there is no blank line, and no line of dashes, instead a line stating “Mixed Operations.”

Difference #2:
For a single op type file, there is additional information provided, giving throughput, and operations per second, see following example:
------ Example line ONLY included in single operation result files ------
Throughput:

  • Average: 119.10 MiB/s, 2330.45 obj/s
    ------- End example ------

Again, it is important to note that this data is NOT provided in a mulit-op file.

Re 1)

Output is meant to be easily readable and not adhere to a specific formula.

Dashes in mixed just looks horrible:

warp analyze warp-mixed-2022-12-13[194820]-kPNY.csv.zst
1526625 operations loaded... Done!
Mixed operations.
----------------------------------------
Operation: DELETE, 10%, Concurrency: 24, Ran 14m59s.
 * Throughput: 169.63 obj/s

----------------------------------------
Operation: GET, 60%, Concurrency: 24, Ran 14m59s.
 * Throughput: 242.65 MiB/s, 1017.77 obj/s

----------------------------------------
Operation: PUT, 15%, Concurrency: 24, Ran 14m59s.
 * Throughput: 60.67 MiB/s, 254.45 obj/s

----------------------------------------
Operation: STAT, 15%, Concurrency: 24, Ran 14m59s.
 * Throughput: 254.44 obj/s

Cluster Total: 303.32 MiB/s, 1696.27 obj/s over 15m0s.

However, having it with details makes much more sense:

warp analyze -analyze.v warp-mixed-2022-12-13[194820]-kPNY.csv.zst
1526625 operations loaded... Done!
Mixed operations.
----------------------------------------
Operation: DELETE - total: 152639, 10.0%, Concurrency: 24, Ran 14m59s, starting 2022-12-13 19:48:23.682 +0530 +0530

Throughput by host:
 * http://minio-site1-db1:9000: Avg: 56.51 obj/s.
 * http://minio-site1-db2:9000: Avg: 57.24 obj/s.
 * http://minio-site1-db3:9000: Avg: 55.89 obj/s.

Requests considered: 152640:
 * Avg: 27ms, 50%: 26ms, 90%: 35ms, 99%: 47ms, Fastest: 10ms, Slowest: 276ms

Requests by host:
 * http://minio-site1-db1:9000 - 50854 requests:
        - Avg: 27ms Fastest: 11ms Slowest: 276ms 50%: 26ms 90%: 35ms
 * http://minio-site1-db2:9000 - 51509 requests:
        - Avg: 27ms Fastest: 10ms Slowest: 270ms 50%: 26ms 90%: 35ms
 * http://minio-site1-db3:9000 - 50284 requests:
        - Avg: 27ms Fastest: 12ms Slowest: 265ms 50%: 26ms 90%: 36ms

----------------------------------------
Operation: GET - total: 915893, 60.0%, Size: 250000 bytes. Concurrency: 24, Ran 14m59s, starting 2022-12-13 19:48:23.675 +0530 +0530

Throughput by host:
 * http://minio-site1-db1:9000: Avg: 81.17 MiB/s, 340.44 obj/s.
 * http://minio-site1-db2:9000: Avg: 81.14 MiB/s, 340.35 obj/s.
 * http://minio-site1-db3:9000: Avg: 80.34 MiB/s, 336.99 obj/s.

I will add that.

Re 2)

I am not sure I understand. The cluster total average is included at the end: Cluster Total: 303.32 MiB/s, 1696.27 obj/s over 15m0s