Вход на сайт

Просмотр новости

Найдите то, что Вас интересует

HammerDB tproc-c on a large server, Postgres 14 to 19 beta1

Дата публикации: 13-06-2026 01:00:03

This has results for HammerDB tproc-c on a large server using MySQL and Postgres. I am new to HammerDB and still figuring out how to explain and present results so I will keep this simple and just share graphs without explaining the results.tl;drThere are small regressions in versions 16, 17 and 18NOPM usually improves a small amount in 19 beta1 relative to 18Builds, configuration and hardwareI compiled Postgres versions from source: 14.22, 14.23, 15.17, 15.18, 16.13, 16.14, 17.9, 17.10, 18.0, 18.1, 18.2, 18.3, 18.4 and 19 beta1.I used a 48-core server from Hetzneran ax162s with an AMD EPYC 9454P 48-Core Processor with SMT disabled2 Intel D7-P5520 NVMe storage devices with RAID 1 (3.8T each) using ext4128G RAMUbuntu 24.04Postgres configuration files:prior to version 18 the config file is named conf.diff.cx10a50g_c32r128 (x10a_c32r128) and is here for versions 14, 15, 16 and 17.for Postgres 18 and 19 I used conf.diff.cx10b_c32r128 (x10b_c32r128) with io_method=sync to be similar to the config used for versions 14 through 17.BenchmarkThe benchmark is tproc-c from HammerDB. The tproc-c benchmark is derived from TPC-C.The benchmark was run for several workloads:vu=10, wh=1000 - 10 virtual users, 1000 warehousesvu=20, wh=1000 - 20 virtual users, 1000 warehousesvu=40, wh=1000 - 40 virtual users, 1000 warehousesvu=10, wh=2000 - 10 virtual users, 2000 warehousesvu=20, wh=2000 - 20 virtual users, 2000 warehousesvu=40, wh=2000 - 40 virtual users, 2000 warehousesvu=10, wh=4000 - 10 virtual users, 4000 warehousesvu=20, wh=4000 - 20 virtual users, 4000 warehousesvu=40, wh=4000 - 40 virtual users, 4000 warehousesThe wh=1000 workloads are less heavy on IO. The wh=4000 workloads are more heavy on IO.The benchmark for Postgres is run by a variant of this script which depends on scripts here.stored procedures are enabledpartitioning is used because the warehouse count is >= 1000a 5 minute rampup is usedthen performance is measured for 60 minutesResultsMy analysis at this point is simple -- I only consider average throughput. Eventually I will examine throughput over time and efficiency (CPU and IO).On the charts that follow y-axis does not start at 0 to improve readability at the risk of overstating the differences. The y-axis shows relative throughput. There might be a regression when the relative throughput is less than 1.0. There might be an improvement when it is > 1.0. The relative throughput is:(NOPM for some-version / NOPM for base-version)The base version is Postgres 14.22.A spreadsheet with absolute and relative values for NOPM is here.Results: vu=10, wh=1000Summary:There are small regressions in versions 16, 17 and 18 while NOPM improves is 19 beta1Results: vu=20, wh=1000Summary:There are small regressions in versions 16, 17 and 18 while NOPM improves is 19 beta1Results: vu=40, wh=1000Summary:There are small regressions in versions 17 and 18 while NOPM improves is 19 beta1Results: vu=10, wh=2000Summary:There are small regressions in version 18 while NOPM improves is 19 beta1Results: vu=20, wh=2000Summary:There are small regressions in versions 16, 17 and 18 while NOPM improves is 19 beta1Results: vu=40, wh=2000Summary:There are small regressions in versions 16, 17 and 18 while NOPM improves is 19 beta1There is no result for 18.1 because of a bug in my test scriptsResults: vu=10, wh=4000Summary:There are small regressions in versions 16, 17 and 18 while NOPM improves is 19 beta1Results: vu=20, wh=4000Summary:There are small regressions in versions 16, 17 and 18Results: vu=40, wh=4000Summary:There are small regressions in versions 16, 17 and 18 while NOPM improves is 19 beta1
HammerDB tproc-c on a large server, Postgres 14 to 19 beta1 appeared first on MariaDB.org


Основное содержимое страницы с новостью.

This has results for HammerDB tproc-c on a large server using MySQL and Postgres. I am new to HammerDB and still figuring out how to explain and present results so I will keep this simple and just share graphs without explaining the results.

tl;dr

  • There are small regressions in versions 16, 17 and 18
  • NOPM usually improves a small amount in 19 beta1 relative to 18

Builds, configuration and hardware

I compiled Postgres versions from source: 14.22, 14.23, 15.17, 15.18, 16.13, 16.14, 17.9, 17.10, 18.0, 18.1, 18.2, 18.3, 18.4 and 19 beta1.

I used a 48-core server from Hetzner

  • an ax162s with an AMD EPYC 9454P 48-Core Processor with SMT disabled
  • 2 Intel D7-P5520 NVMe storage devices with RAID 1 (3.8T each) using ext4
  • 128G RAM
  • Ubuntu 24.04

Postgres configuration files:

  • prior to version 18 the config file is named conf.diff.cx10a50g_c32r128 (x10a_c32r128) and is here for versions 14, 15, 16 and 17.
  • for Postgres 18 and 19 I used conf.diff.cx10b_c32r128 (x10b_c32r128) with io_method=sync to be similar to the config used for versions 14 through 17.

Benchmark

The benchmark is tproc-c from HammerDB. The tproc-c benchmark is derived from TPC-C.

The benchmark was run for several workloads:

  • vu=10, wh=1000 - 10 virtual users, 1000 warehouses
  • vu=20, wh=1000 - 20 virtual users, 1000 warehouses
  • vu=40, wh=1000 - 40 virtual users, 1000 warehouses
  • vu=10, wh=2000 - 10 virtual users, 2000 warehouses
  • vu=20, wh=2000 - 20 virtual users, 2000 warehouses
  • vu=40, wh=2000 - 40 virtual users, 2000 warehouses
  • vu=10, wh=4000 - 10 virtual users, 4000 warehouses
  • vu=20, wh=4000 - 20 virtual users, 4000 warehouses
  • vu=40, wh=4000 - 40 virtual users, 4000 warehouses

The wh=1000 workloads are less heavy on IO. The wh=4000 workloads are more heavy on IO.

  • stored procedures are enabled
  • partitioning is used because the warehouse count is >= 1000
  • a 5 minute rampup is used
  • then performance is measured for 60 minutes

Results

My analysis at this point is simple -- I only consider average throughput. Eventually I will examine throughput over time and efficiency (CPU and IO).

On the charts that follow y-axis does not start at 0 to improve readability at the risk of overstating the differences. The y-axis shows relative throughput. There might be a regression when the relative throughput is less than 1.0. There might be an improvement when it is > 1.0. The relative throughput is:

(NOPM for some-version / NOPM for base-version)

The base version is Postgres 14.22.

A spreadsheet with absolute and relative values for NOPM is here.

Results: vu=10, wh=1000

Summary:

  • There are small regressions in versions 16, 17 and 18 while NOPM improves is 19 beta1

relative%20NOPM_%201000%20warehouses,%2010%20virtual%20users.png

Results: vu=20, wh=1000

Summary:

  • There are small regressions in versions 16, 17 and 18 while NOPM improves is 19 beta1

relative%20NOPM_%201000%20warehouses,%2020%20virtual%20users.png

Results: vu=40, wh=1000

Summary:

  • There are small regressions in versions 17 and 18 while NOPM improves is 19 beta1

relative%20NOPM_%201000%20warehouses,%2040%20virtual%20users.png

Results: vu=10, wh=2000

Summary:

  • There are small regressions in version 18 while NOPM improves is 19 beta1

relative%20NOPM_%202000%20warehouses,%2010%20virtual%20users.png

Results: vu=20, wh=2000

Summary:

  • There are small regressions in versions 16, 17 and 18 while NOPM improves is 19 beta1

relative%20NOPM_%202000%20warehouses,%2020%20virtual%20users.png

Results: vu=40, wh=2000

Summary:

  • There are small regressions in versions 16, 17 and 18 while NOPM improves is 19 beta1
  • There is no result for 18.1 because of a bug in my test scripts

relative%20NOPM_%202000%20warehouses,%2040%20virtual%20users.png

Results: vu=10, wh=4000

Summary:

  • There are small regressions in versions 16, 17 and 18 while NOPM improves is 19 beta1

relative%20NOPM_%204000%20warehouses,%2010%20virtual%20users.png

Results: vu=20, wh=4000

Summary:

  • There are small regressions in versions 16, 17 and 18

relative%20NOPM_%204000%20warehouses,%2020%20virtual%20users.png

Results: vu=40, wh=4000

Summary:

  • There are small regressions in versions 16, 17 and 18 while NOPM improves is 19 beta1

relative%20NOPM_%204000%20warehouses,%2040%20virtual%20users.png

Схожие новости

#Наименование новостиТональностьИнформативностьДата публикации
1HammerDB tproc-c on a large server, Postgres and MySQL06.515-02-2026
2CPU efficiency for MariaDB, MySQL and Postgres on TPROC-C with a small server04.2616-03-2026
3CPU-bound sysbench on a large server: Postgres 12 to 19 beta1013.0620-06-2026
4The insert benchmark on a small server : Postgres 12.22 through 18.3011.929-03-2026
5The insert benchmark on a small server, IO-bound workload : Postgres 19 beta1014.2817-06-2026
6The insert benchmark on a small server, cached workload : Postgres 19 beta1015.8911-06-2026
7Write-heavy sysbench tests, a large server, modern Postgres and MySQL011.8612-06-2026
8The Insert Benchmark vs MariaDB 10.2 to 13.0 on a 24-core server012.608-04-2026
9Explaining why throughput varies for Postgres with a CPU-bound Insert Benchmark07.818-02-2026
10Sysbench vs MySQL on a small server: another way to view the regressions09.0109-04-2026

Классификация: . Схожих патентов: 0. Схожих новостей: 10. Тональность: 0. Информативность: 22.46. Источник: mariadb.org.