-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Perftest's TUI output is pretty good, but still has some problems:
- When there are a lot of QPs, things get too verbose, every QP would output detailed information of CQ, MR, PSN and GIDs
- Parsers unfriendly, especially when there is a new option added in perftest's output
To solve these problems, we would split output into sections, including test configuration, QP details, and results, user could decide which section they don't need, and we would also provide structured format output like yaml / toml / json, as serde already supports them.
---------------------------- Test Configuration ----------------------------
Device : rocep65s0f0
Transport : IB
QP Count : 2
Connection Type: RC
MTU : 4096
GID Type : RoCEv2
Rx Depth : 512
Tx Depth : 256
-------------------------------- QP Details --------------------------------
QP #0: (Local QPN: 0x04fc PSN: 0xc46be7) -> (Remote QPN: 0x04fc PSN: 0x7d6053)
QP #1: (Local QPN: 0x04fd PSN: 0xc46be8) -> (Remote QPN: 0x04fd PSN: 0x7d6054)
Local GID: Index: 0, GID: fd80:0000:0000:0000:0000:0000:0000:0002
Remote GID: Index: 1, GID: fd80:0000:0000:0000:0000:0000:0000:0003
----------------------------- Running Results ------------------------------
Size (B) | Iterations | Avg BW (Gb/s) | MsgRate (Mpps) | Time
------------+------------+---------------+----------------+-------
65536 | 1847 | 98.08 | 0.187068 | 23.4s
{
"timestamp": "2023-11-15T10:30:00Z",
"metadata": {
"test_id": "550e8400-e29b-41d4-a716-446655440000",
"version": "0.1.0",
"duration": 60,
"hostname": "test-server",
"tags": ["production"]
},
"config": {
"test_type": "Send BW",
"device_name": "rocep65s0f0",
"transport_type": "IB",
"qp_count": 1
},
"results": [
{
"msg_size": 65536,
"iterations": 1000,
"bw_peak": 0.0,
"bw_average": 98.08,
"msg_rate": 0.187068
}
]
}Metadata
Metadata
Assignees
Labels
No labels