Tests
Suites
Latest Results
Search
Register
Login
Popular Tests
Timed Linux Kernel Compilation
SVT-AV1
7-Zip Compression
Stockfish
x265
FFmpeg
Newest Tests
LiteRT
WarpX
Epoch
Valkey
Whisperfile
XNNPACK
Recently Updated Tests
ASTC Encoder
SVT-AV1
Unvanquished
Primesieve
XNNPACK
oneDNN
New & Recently Updated Tests
Recently Updated Suites
Database Test Suite
Machine Learning
Steam
New & Recently Updated Suites
Component Benchmarks
CPUs / Processors
GPUs / Graphics
OpenGL
Disks / Storage
Motherboards
File-Systems
Operating Systems
OpenBenchmarking.org
Corporate / Organization Info
Bug Reports / Feature Requests
PostgreSQL pgbench 1.8.3
pts/pgbench-1.8.3
- 22 March 2018 -
Adjust run count as was bumped lower during debugging.
downloads.xml
<?xml version="1.0"?> <!--Phoronix Test Suite v8.0.0m1--> <PhoronixTestSuite> <Downloads> <Package> <URL>http://ftp.postgresql.org/pub/source/v10.3/postgresql-10.3.tar.bz2</URL> <MD5>506498796a314c549388cafb3d5c717a</MD5> <SHA256>6ea268780ee35e88c65cdb0af7955ad90b7d0ef34573867f223f14e43467931a</SHA256> <FileSize>19959653</FileSize> <PlatformSpecific>Linux, BSD, Solaris, MacOSX</PlatformSpecific> </Package> <Package> <URL>http://get.enterprisedb.com/postgresql/postgresql-10.3-1-windows-x64-binaries.zip</URL> <MD5>b2ccc4845f4691c58d3c86f9e60c11cf</MD5> <SHA256>9e5cc5c4d8d368042f5e3ad3a2e8a530a8d9ae9e61354ff3dece6462eccfac00</SHA256> <FileSize>198127421</FileSize> <PlatformSpecific>Windows</PlatformSpecific> </Package> </Downloads> </PhoronixTestSuite>
install.sh
#!/bin/sh version=10.3 tar -xjf postgresql-${version}.tar.bz2 rm -rf $HOME/pg_ mkdir -p $HOME/pg_/data/postgresql/extension/ touch $HOME/pg_/data/postgresql/extension/plpgsql.control # Junk up the root checking code so test profiles can easily run as root echo "diff -Naur postgresql-10.0.orig/contrib/pg_upgrade/option.c postgresql-10.0/contrib/pg_upgrade/option.c --- postgresql-10.0.orig/contrib/pg_upgrade/option.c 2015-06-01 15:05:57.000000000 -0400 +++ postgresql-10.0/contrib/pg_upgrade/option.c 2015-06-09 20:15:18.401447066 -0400 @@ -95,8 +95,8 @@ } /* Allow help and version to be run as root, so do the test here. */ - if (os_user_effective_id == 0) - pg_fatal(\"%s: cannot be run as root\\\n\", os_info.progname); + //if (os_user_effective_id == 0) + // pg_fatal(\"%s: cannot be run as root\\\n\", os_info.progname); if ((log_opts.internal = fopen_priv(INTERNAL_LOG_FILE, \"a\")) == NULL) pg_fatal(\"cannot write to log file %s\\\n\", INTERNAL_LOG_FILE); diff -Naur postgresql-10.0.orig/src/bin/initdb/initdb.c postgresql-10.0/src/bin/initdb/initdb.c --- postgresql-10.0.orig/src/bin/initdb/initdb.c 2015-06-01 15:05:57.000000000 -0400 +++ postgresql-10.0/src/bin/initdb/initdb.c 2015-06-09 20:21:57.424364326 -0400 @@ -794,7 +794,7 @@ { const char *username; -#ifndef WIN32 +#ifdef defined(WIN32) && !defined(WIN32) if (geteuid() == 0) /* 0 is root's uid */ { fprintf(stderr, diff -Naur postgresql-10.0.orig/src/bin/pg_ctl/pg_ctl.c postgresql-10.0/src/bin/pg_ctl/pg_ctl.c --- postgresql-10.0.orig/src/bin/pg_ctl/pg_ctl.c 2015-06-01 15:05:57.000000000 -0400 +++ postgresql-10.0/src/bin/pg_ctl/pg_ctl.c 2015-06-09 20:22:25.360273073 -0400 @@ -2129,7 +2129,7 @@ /* * Disallow running as root, to forestall any possible security holes. */ -#ifndef WIN32 +#ifdef defined(WIN32) && !defined(WIN32) if (geteuid() == 0) { write_stderr(_(\"%s: cannot be run as root\\\n\" diff -Naur postgresql-10.0.orig/src/backend/main/main.c postgresql-10.0/src/backend/main/main.c --- postgresql-10.0.orig/src/backend/main/main.c 2015-06-01 15:05:57.000000000 -0400 +++ postgresql-10.0/src/backend/main/main.c 2015-06-09 20:29:40.324604340 -0400 @@ -391,7 +391,7 @@ static void check_root(const char *progname) { -#ifndef WIN32 +#ifdef defined(WIN32) && !defined(WIN32) if (geteuid() == 0) { write_stderr(\"\\\"root\\\" execution of the PostgreSQL server is not permitted.\\\n\" @@ -415,7 +415,6 @@ progname); exit(1); } -#else /* WIN32 */ if (pgwin32_is_admin()) { write_stderr(\"Execution of PostgreSQL by a user with administrative permissions is not\\\n\" " | patch -p0 cd postgresql-${version} ./configure --prefix=$HOME/pg_ --without-readline --without-zlib make -j $NUM_CPU_JOBS make -C contrib/pgbench all # echo $? > ~/install-exit-status make install make -C contrib/pgbench install cd ~ rm -rf postgresql-${version}/ rm -rf pg_/doc/ # initialize database with encoding and locale $HOME/pg_/bin/initdb -D $HOME/pg_/data/db --encoding=SQL_ASCII --locale=C echo "#!/bin/sh PGDATA=\$HOME/pg_/data/db/ PGPORT=7777 export PGDATA export PGPORT # start server pg_/bin/pg_ctl start -o '-c autovacuum=false' # wait for server to start sleep 10 # create test db pg_/bin/createdb pgbench # set up tables case \$1 in \"BUFFER_TEST\") SCALING_FACTOR=\`echo \"\$SYS_MEMORY * 0.003\" | bc\` ;; \"MOSTLY_CACHE\") SCALING_FACTOR=\`echo \"\$SYS_MEMORY * 0.2\" | bc\` ;; \"ON_DISK\") SCALING_FACTOR=\`echo \"\$SYS_MEMORY * 0.6\" | bc\` ;; esac pg_/bin/pgbench -i -s \$SCALING_FACTOR pgbench case \$2 in \"SINGLE_THREAD\") PGBENCH_ARGS=\"-c 1\" ;; \"NORMAL_LOAD\") PGBENCH_ARGS=\"-j \$NUM_CPU_CORES -c \$((\$NUM_CPU_CORES*4))\" ;; \"HEAVY_CONTENTION\") PGBENCH_ARGS=\"-j \$((\$NUM_CPU_CORES*2)) -c \$((\$NUM_CPU_CORES*16))\" ;; esac case \$3 in \"READ_WRITE\") PGBENCH_MORE_ARGS=\"\" ;; \"READ_ONLY\") PGBENCH_MORE_ARGS=\"-S\" ;; esac # run the test pg_/bin/pgbench \$PGBENCH_ARGS \$PGBENCH_MORE_ARGS -T 60 pgbench >\$LOG_FILE 2>&1 # drop test db pg_/bin/dropdb pgbench # stop server pg_/bin/pg_ctl stop" > pgbench chmod +x pgbench
install_windows.sh
#!/bin/sh unzip -o postgresql-10.3-1-windows-x64-binaries.zip rm -rf $HOME/pg_ mkdir -p $HOME/pg_/data/postgresql/extension/ touch $HOME/pg_/data/postgresql/extension/plpgsql.control # initialize database with encoding and locale cd pgsql/bin ./initdb.exe -D $HOME/db --encoding=SQL_ASCII --locale=C cd ~ echo "If this test fails to run, you may need to manually install the Microsoft Visual C++ Redistributable package for MSVCR120.dll: https://www.microsoft.com/en-us/download/details.aspx?id=40784" > ~/install-message echo "#!/bin/sh PGDATA=\$HOME/db/ PGPORT=7777 export PGDATA mkdir db export PGPORT # start server ./pgsql/bin/pg_ctl.exe start -o '-c autovacuum=false' # wait for server to start sleep 10 # create test db ./pgsql/bin/createdb.exe pgbench # set up tables case \$1 in \"BUFFER_TEST\") SCALING_FACTOR=\`echo \"\$SYS_MEMORY * 0.003\" | bc\` ;; \"MOSTLY_CACHE\") SCALING_FACTOR=\`echo \"\$SYS_MEMORY * 0.2\" | bc\` ;; \"ON_DISK\") SCALING_FACTOR=\`echo \"\$SYS_MEMORY * 0.6\" | bc\` ;; esac ./pgsql/bin/pgbench.exe -i -s \$SCALING_FACTOR pgbench case \$2 in \"SINGLE_THREAD\") PGBENCH_ARGS=\"-c 1\" ;; \"NORMAL_LOAD\") PGBENCH_ARGS=\"-j \$NUM_CPU_CORES -c \$((\$NUM_CPU_CORES*4))\" ;; \"HEAVY_CONTENTION\") PGBENCH_ARGS=\"-j \$((\$NUM_CPU_CORES*2)) -c \$((\$NUM_CPU_CORES*16))\" ;; esac case \$3 in \"READ_WRITE\") PGBENCH_MORE_ARGS=\"\" ;; \"READ_ONLY\") PGBENCH_MORE_ARGS=\"-S\" ;; esac # run the test ./pgsql/bin/pgbench.exe \$PGBENCH_ARGS \$PGBENCH_MORE_ARGS -T 60 pgbench >\$LOG_FILE # drop test db ./pgsql/bin/dropdb.exe pgbench # stop server ./pgsql/bin/pg_ctl.exe stop" > pgbench chmod +x pgbench
results-definition.xml
<?xml version="1.0"?> <!--Phoronix Test Suite v8.0.0m1--> <PhoronixTestSuite> <ResultsParser> <OutputTemplate>tps = #_RESULT_# (excluding connections establishing) TPS</OutputTemplate> <LineHint>excluding connections establishing</LineHint> </ResultsParser> </PhoronixTestSuite>
test-definition.xml
<?xml version="1.0"?> <!--Phoronix Test Suite v8.0.0m1--> <PhoronixTestSuite> <TestInformation> <Title>PostgreSQL pgbench</Title> <AppVersion>10.3</AppVersion> <Description>This is a simple benchmark of PostgreSQL using pgbench.</Description> <ResultScale>TPS</ResultScale> <Proportion>HIB</Proportion> <Executable>pgbench</Executable> <TimesToRun>3</TimesToRun> </TestInformation> <TestProfile> <Version>1.8.3</Version> <SupportedPlatforms>Linux, MacOSX, BSD, Solaris, Windows</SupportedPlatforms> <SoftwareType>Benchmark</SoftwareType> <TestType>System</TestType> <License>Free</License> <Status>Verified</Status> <ExternalDependencies>build-utilities</ExternalDependencies> <EnvironmentSize>1000</EnvironmentSize> <ProjectURL>http://www.postgresql.org/</ProjectURL> <InternalTags>SMP</InternalTags> <Maintainer>Michael Larabel</Maintainer> </TestProfile> <TestSettings> <Option> <DisplayName>Scaling</DisplayName> <Identifier>scaling-factor</Identifier> <ArgumentPrefix></ArgumentPrefix> <ArgumentPostfix></ArgumentPostfix> <DefaultEntry>0</DefaultEntry> <Menu> <Entry> <Name>Buffer Test</Name> <Value>BUFFER_TEST</Value> <Message></Message> </Entry> <Entry> <Name>Mostly RAM</Name> <Value>MOSTLY_CACHE</Value> <Message></Message> </Entry> <Entry> <Name>On-Disk</Name> <Value>ON_DISK</Value> <Message></Message> </Entry> </Menu> </Option> <Option> <DisplayName>Test</DisplayName> <Identifier>run-test</Identifier> <ArgumentPrefix></ArgumentPrefix> <ArgumentPostfix></ArgumentPostfix> <DefaultEntry>0</DefaultEntry> <Menu> <Entry> <Name>Single Thread</Name> <Value>SINGLE_THREAD</Value> <Message></Message> </Entry> <Entry> <Name>Normal Load</Name> <Value>NORMAL_LOAD</Value> <Message></Message> </Entry> <Entry> <Name>Heavy Contention</Name> <Value>HEAVY_CONTENTION</Value> <Message></Message> </Entry> </Menu> </Option> <Option> <DisplayName>Mode</DisplayName> <Identifier>run-mode</Identifier> <ArgumentPrefix></ArgumentPrefix> <ArgumentPostfix></ArgumentPostfix> <DefaultEntry>0</DefaultEntry> <Menu> <Entry> <Name>Read Write</Name> <Value>READ_WRITE</Value> <Message></Message> </Entry> <Entry> <Name>Read Only</Name> <Value>READ_ONLY</Value> <Message></Message> </Entry> </Menu> </Option> </TestSettings> </PhoronixTestSuite>