can't explain commit performance win7 vs linux : 8000/s vs 419/s

From: "t(dot)dalpozzo(at)gmail(dot)com" <t(dot)dalpozzo(at)gmail(dot)com>
To: pgsql-performance(at)postgresql(dot)org
Subject: can't explain commit performance win7 vs linux : 8000/s vs 419/s
Date: 2016-06-25 16:19:50
Message-ID: 576EAF26.8080508@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Hi,
I've postgres 9.5.3 installed on win7 64 bit, and ubuntu 16.04tls 64
bit, same SSD (evo 850 pro) , two different partitions. Laptop is 3.8Ghz.
I've in each partition a simple database with one table called data256
with one column of 256 char.
I wrote a program using libpq which:
1 connects to 127.0.0.1 to the server
2 drops and recreates the table;
3 executes 2000 times the exec() function with the command "INSERT INTO
data256 VALUES ('AAAAAA...... 250 times')"
I want to commit after every insert of course.
The program is the same both in win and linux; in ansi c, so it's portable.

Performance:
Win7: 8000 write/sec
Linux: 419 write/sec

I don't figure out why such a difference. Also what should I expect?
Which one is reasonable?

I compared the two postgresql.conf, they're identical (except obvious
things), they're the default ones, I didn't touch them. I just tried to
disable ssl in one because it was set but nothing changes.
I didn't go into deeper analysis because the source C file used for test
is the same and the two postgresql.conf are identical.

Then, in order to test write / flush without postgres, I made another C
program, to open a file in writing, and for 1000 times : write 256 bytes
and flush them (using fsync in linux and FlushFileBuffers in win).
Win7: 200 write/sec
Linux: 100 write/sec

Thanks
Pupillo

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Tom Lane 2016-06-25 18:08:35 Re: can't explain commit performance win7 vs linux : 8000/s vs 419/s
Previous Message Craig James 2016-06-23 19:52:25 Re: Can't get two index scans