Re: Turn off Hyperthreading! WAS: 60 core performance with 9.3

From: Mark Kirkwood <mark(dot)kirkwood(at)catalyst(dot)net(dot)nz>
To: Josh Berkus <josh(at)agliodbs(dot)com>, pgsql-performance(at)postgresql(dot)org
Cc: "Graeme B(dot) Bell" <grb(at)skogoglandskap(dot)no>
Subject: Re: Turn off Hyperthreading! WAS: 60 core performance with 9.3
Date: 2014-08-20 23:14:46
Message-ID: 53F52BE6.6080006@catalyst.net.nz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On 21/08/14 07:13, Josh Berkus wrote:
> Mark, all:
>
> So, this is pretty damming:
>
> Read-only test with HT ON:
>
> [pgtest(at)db ~]$ pgbench -c 20 -j 4 -T 600 -S bench
> starting vacuum...end.
> transaction type: SELECT only
> scaling factor: 30
> query mode: simple
> number of clients: 20
> number of threads: 4
> duration: 600 s
> number of transactions actually processed: 47167533
> tps = 78612.471802 (including connections establishing)
> tps = 78614.604352 (excluding connections establishing)
>
> Read-only test with HT Off:
>
> [pgtest(at)db ~]$ pgbench -c 20 -j 4 -T 600 -S bench
> starting vacuum...end.
> transaction type: SELECT only
> scaling factor: 30
> query mode: simple
> number of clients: 20
> number of threads: 4
> duration: 600 s
> number of transactions actually processed: 82457739
> tps = 137429.508196 (including connections establishing)
> tps = 137432.893796 (excluding connections establishing)
>
>
> On a read-write test, it's 10% faster with HT off as well.
>
> Further, from their production machine we've seen that having HT on
> causes the machine to slow down by 5X whenever you get more than 40
> cores (as in 100% of real cores or 50% of HT cores) worth of activity.
>
> So we're definitely back to "If you're using PostgreSQL, turn off
> Hyperthreading".
>

Hmm - that is interesting - I don't think we compared read only scaling
for hyperthreading on and off (only read write). You didn't mention what
cpu this is for (or how many sockets etc), would be useful to know.

Notwithstanding the above results, my workmate Matt made an interesting
observation: the scaling graph for (our) 60 core box (HT off), looks
just like the one for our 32 core box with HT *on*.

We are wondering if a lot of the previous analysis of HT performance
regressions should actually be reevaluated in the light of ...err is it
just that we have a lot more cores...? [1]

Regards

Mark

[1] Particularly as in *some* cases (single socket i7 for instance) HT
on seems to scale fine.

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Peter Geoghegan 2014-08-20 23:59:31 Re: Turn off Hyperthreading! WAS: 60 core performance with 9.3
Previous Message Kevin Grittner 2014-08-20 21:24:22 Re: query against pg_locks leads to large memory alloc