Well, you've got me stumped a bit on this. I prefer the easy ones. 😉
The only thing I see here that is suspect is the 2 1TB spindle drives, but if that were the situation, you would just see server #2 as the outlier which is not what you're seeing.
A few things I would check:
1) postgresql.conf on all 3 servers. What are the differences if any? 2) Logging on all systems from the host OS to the guest OS to pg (in the conf file). 3) Are these commands running local to the server or remote from another host? 4) Check the free RAM on the host OSes. Make sure you're not paging in the host. Whether the guests are idle or not, it won't matter if the host OS is swapping. I doubt it based on the specs you sent.
Comparing #1 and #3 (leaving 2 out for the moment) gives you pretty much a 1:1 hardware comparison.
If I read this correctly, running the same create db statement on #3 as #1 take minimum twice the amount of time? That ain't right.
From: pgsql-admin-owner@xxxxxxxxxxxxxx <pgsql-admin-owner@xxxxxxxxxxxxxx> on behalf of kpi6288@xxxxxxxxx <kpi6288@xxxxxxxxx>
Sent: Wednesday, November 15, 2017 11:43 AM To: pgsql-admin@xxxxxxxxxxxxxx Subject: Re: [ADMIN] Performance difference between servers Trying as best as a can:
#1 HP 8200 Elite microtower, i7-2600, 16GB RAM, 1 SSD 480 GB, 1 SSD 900 GB, Hyper-V 2012 R2 (not 2008 R2 as written in my original question) #2 Lenovo TS 150, E3-1245 V5, 40GB RAM, 2 SSD 850GB as RAID 1 (BIOS level), 2 HDDs 1TB as RAID 1 (BIOS level) #3 model unknown, E3-1270 V3, 32GB RAM, 2 SSD 480GB as RAID 1 (BIOS level)
Server #1 is more a PC than a server.
Server #1 runs in total 4 virtual guests. 8GB and 6 „cores“ dedicated to the server running PostgreSQL and 3GB to other machines which are almost 100% idle. Server #2 has currently on the one guets running PostgreSQL with 16GB RAM and 6 „cores“ dedicated. Server #3 runs 2 virtual guests. 12GB and 4 cores dedicated tot he guest runnning PostgreSQL. 4 GB and 3 cores decicated to another guest with is practically idle.
Servers #2 and #3 have still plenty of free disk space while server #1 is using approx. 70% oft he disks.
Server #1 has much older SSDs than #2. Not sure about #3.
Von: Scott Whitney [mailto:scott@xxxxxxxxxxx]
Can you post the hardware host specs for #1, #2 and #3? If those ARE the hardware specs (for example, you list SSDs), can you list the resources assigned to the guests?
From:
kpi6288@xxxxxxxxx <kpi6288@xxxxxxxxx>
Yes, exactly:
Three different (hardware) machines, each having a hyper-V host and the Windows Servers as Hyper-V guests.
Von: Scott Whitney [mailto:scott@xxxxxxxxxxx]
Are you saying that each of these servers is a virtual HyperV machine running under a hardware host?
From:
pgsql-admin-owner@xxxxxxxxxxxxxx <pgsql-admin-owner@xxxxxxxxxxxxxx> on behalf of
kpi6288@xxxxxxxxx <kpi6288@xxxxxxxxx>
We have 3 different servers, one (the oldest) ist significantly faster at certain operations and I can’t find out the reason:
(table created in monospace font)
Server Processor RAM CrystalDiskMark pgbench CREATE DATABASE OS #1 i7-2600 8GB 495 / 473 26.000 4.5 … 6 s W/ Server 2008 R2 on Hyper V Server 2008 #2 E3-1245 16GB 797 / 514 50.000 13 … 19 s W/ Server 2016 Std. on Hyper V Server 2016 #3 E3-1270 12GB 933 / 334 40.000 13 … 20 s W/ Server 2008 Essentials on Hyper V Server 2016
CrystalDiskMark: „Seq Q32T1“ Pgbench: pgbench -i -s 200 -U postgres pgbench pgbench -c 40 -j 10 -T 150 -U postgres -S -P 5 pgbench CREATE DATABASE: create database test with template myTemplate
All running PostgreSQL 9.6 x64 with similar configuration. All running as virtual machines, no other virtual machines creating any load. Using the same template database on all machines.
Although the indicative numbers of pgbench and CrystalDiskMark show better values for server #2 and #3, server #1 creates a new database considerably faster. All servers have SSDs. Server #1 has two single SSDs (a system disk and a data disk). Servers #2 and #3 have only one logical disk for system and data, and this is two SSDs running as RAID 1. This may be slower but if it is, I would excpect this also to show up in the pgbench results.
The reason behind this exercise is that a test application was also reported to be slower on server #2 and 3.
Any idea how to track down the performance difference?
Thank you Klaus
Journyx, Inc. 7600 Burnet Road #300
p 512.834.8888 f 512-834-8858
Do you receive our promotional emails? Click here or visit http://journyx.com/communication-preferences to unsubscribe. |