Performance difference between kernel 3.10 and 3.12 - Mailing list pgsql-hackers

From Tatsuo Ishii
Subject Performance difference between kernel 3.10 and 3.12
Date
Msg-id 20150203.174637.1316840640181577524.t-ishii@sraoss.co.jp
Whole thread Raw
List pgsql-hackers
I see significant performance difference between systems using Linux
kernel 3.10 and 3.12. We did tests on CentOS7 (kernel 3.10) and SuSE
Enterprise Linux Server 12 (kernel 3.12).

Both systems run on VMWare ESXi 5.5.0.
Xeon CPU E52650 2GHz x 2 (16 cores in total)
Mem 96GB, 10,000 RPM SAS drive

Guest OS setting:
CPU 4
Mem 6GB
file system ext4
PostgreSQL 9.3.5 compiled from source code (all parameters are default)

The benchmark tables are created by "pgbench -i -s 500".  "pgbench -S
-c NUM -T 500" runs 3 times for each NUM concurrent users and
we calculate the average TPS for the each run.

We ran pgbench in 4 patters:

1) SLES12 (kernel 3.12)
2) CentOS7 (kernel 3.10 with default deadline scheduler)
3) CentOS7 (kernel 3.10 with cfq scheduler)
4) CentOS7 (kernel replaced with 3.12 with cfq scheduler)

The result is roughly:

#1 > #4 >> #2 >> #3

So it seems the performance difference is dominated by the kernel
version difference (3.10 vs. 3.12). Does anybody know the cause?

Note that kernel parameter "sched_autogroup" (which is available only
with 3.10 kernel) did not give much difference.

Best regards,
--
Tatsuo Ishii
SRA OSS, Inc. Japan
English: http://www.sraoss.co.jp/index_en.php
Japanese:http://www.sraoss.co.jp

pgsql-hackers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: Re: Missing markup in pg_receivexlog.sgml
Next
From: Kyotaro HORIGUCHI
Date:
Subject: Re: Performance improvement for joins where outer side is unique