Skip to main content

Performance Benchmark Tool

taosperf uses tools such as dd, fio, ping, and iperf3 to evaluate the disk and network performance of a TDengine deployment environment.

Usage

Local mode tests the current host and can test network throughput to a specified peer:

usage: taosperf local [-h] [--config CONFIG] [--backend]
[--test-item {all,disk,network}] [--result RESULT]
[--log-level {debug,info}] [--ip IP]

SSH mode runs the configured tests across all cluster nodes:

usage: taosperf ssh [-h] [--config CONFIG] [--backend]
[--test-item {all,disk,network}] [--result RESULT]
[--log-level {debug,info}]

--test-item selects all tests, disk tests only, or network tests only. --result sets the report directory, and --ip sets the network-test peer in local mode.

Configuration

The YAML configuration defines cluster hosts and disk paths, plus the commands used for disk and network testing:

nodes:
- ip: 192.168.1.101
user: root
password: yourpassword
port: 22
dirs:
- dir: /data1
- dir: /data2

cmd:
- io:
dd:
write: dd if=/dev/zero of=[file] bs=400K count=50000 oflag=direct conv=fsync
read: dd if=[file] of=/dev/null bs=1M count=20000 iflag=direct
- network:
ping: ping -c 10000 -i 0.1 -s 1024 [ip]
iperf3: iperf3 -c [ip] -P 4 -t 120

Output

The tool writes perf_report.md, which records disk and network configuration, the commands executed, and measured disk read/write and network throughput.

Examples

# Test local disks and network connectivity
./taosperf local

# Test the current host against a specific peer
./taosperf local -i 192.168.1.1

# Test all configured cluster nodes
./taosperf ssh -f /path/to/perf.yaml

# Run only network or disk tests
./taosperf ssh -ti network
./taosperf ssh -ti disk