Is it normal for a single-machine TPC-C test with 112 CPU threads, 250GB memory, 1.5TB NVMe, and 10GbE network to have a TPMC of 58,000?

Note:
This topic has been translated from a Chinese forum by GPT and might contain errors.

Original topic: 单机tpc-c,112cpu线程,250G内存,1.5T nvme,万兆网,测试tpmc为5.8万,正常吗?

| username: TiDBer_M9buM6Mw

tiup bench tpcc -D tpcc --warehouses 3000 prepare --parts 10 --threads 15

Logs and data are stored on SATA SSD, test results:

terminals tpmc cpu mem iops kB_read/s kB_wrtn/s
1 976.5 5% 75% 1339 3895.5 8881.2
150 30216.5 47% 75% 13550 95642.7 105509.3
300 28647.7 44% 75% 12520 89339.4 98999.2
600 26788.1 42% 75% 12945 100637.8 96337.0

Logs and data are stored on NVMe SSD, test results:

terminals tpmc cpu mem iops kB_read/s kB_wrtn/s
600 58586.0 60% 75% 62074 294442.8 195990.2
| username: h5n1 | Original post link

Do you think it’s too high or too low? Just one TiKV?

| username: TiDBer_M9buM6Mw | Original post link

First time testing, not really sure about it.

| username: 箱子NvN | Original post link

Looking at your picture, there is only one TiKV node. It is recommended to have three. TiDB has operator pushdown, so each TiKV can perform calculations. With three nodes, it will be faster and also highly available.

| username: YuchongXU | Original post link

As long as it meets the business requirements.

| username: TiDBer_M9buM6Mw | Original post link

I’ll give it a try, thank you! Learned something new.

| username: TiDBer_M9buM6Mw | Original post link

I want to test the single-machine performance and horizontal scalability, and also test 2, 4, and 8 nodes.

| username: Mark | Original post link

You can increase the number of threads and test again. With this configuration, the tpcc test mc will exceed 50,000. Based on 1.5T, your IOPS value is probably not at the limit.

| username: TiDBer_M9buM6Mw | Original post link

It will decrease:

terminals tpmc cpu mem iops kB_read/s kB_wrtn/s
1 988.9 7% 74% 3277 16400.2 15478.3
150 61028.0 56% 74% 57786 193340.2 215586.0
300 60930.4 58% 74% 61089 219394.9 252087.8
600 57026.6 57% 75% 66490 246193.6 212114.5
| username: Mark | Original post link

:smile: Can’t access it? Try testing it a couple more times.

| username: TiDBer_M9buM6Mw | Original post link

Tried with 2 nodes and 4 nodes.

| username: cs58_dba | Original post link

You also need to look at the response time. If the latency is too high, it won’t work either.

| username: TiDBer_M9buM6Mw | Original post link

With two nodes and 10,000 warehouses, it should be 60,000. Swap is turned off. :upside_down_face:

With --threads 150, it starts reporting busy buffer and invalid connection errors.

The sysctl parameters and limits.conf file are set according to the official documentation.

| username: cs58_dba | Original post link

We generally set the response time to be less than 50ms for effective throughput.

| username: TiDBer_M9buM6Mw | Original post link

Does tiup bench tpcc require parameters? How should this be set?

| username: system | Original post link

This topic will be automatically closed 60 days after the last reply. No new replies are allowed.