From: | Jeff Janes <jeff(dot)janes(at)gmail(dot)com> |
---|---|
To: | Samir Magar <samirmagar8(at)gmail(dot)com> |
Cc: | "pgsql-performance(at)postgresql(dot)org" <pgsql-performance(at)postgresql(dot)org> |
Subject: | Re: How to reduce IOWAIT and CPU idle time? |
Date: | 2016-09-11 01:46:53 |
Message-ID: | CAMkU=1ywsxuMMok3Ux9EUmvqWQB4zdvjtHo-=w9qdxDwSy45zg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
On Sat, Sep 10, 2016 at 3:49 AM, Samir Magar <samirmagar8(at)gmail(dot)com> wrote:
> Hello,
>
>
> My Application has normally 25 to 30 connections and it is doing lot of
> insert/update/delete operation.
> The database size is 100GB.
> iowait is at 40% to 45 % and CPU idle time is at 45% to 50%
> TOTAL RAM = 8 GB TOTAL CPU = 4
>
> postgresql.conf parametre:
>
> shared_buffers = 2GB
> work_mem = 100MB
> effective_cache_size = 2GB
> maintenance_work_mem = 500MB
> autovacuum = off
> wal_buffers = 64MB
>
>
> How can i reduce iowait and CPU idle time. It is slowing all the queries.
> The queries that used to take 1 sec,it is taking 12-15 seconds.
>
What changed between the 1 sec regime and the 12-15 second regime? Just
growth in the database size?
Index-update-intensive databases will often undergo a collapse in
performance once the portion of the indexes which are being rapidly dirtied
exceeds shared_buffers + (some kernel specific factor related
to dirty_background_bytes and kin)
If you think this is the problem, you could try violating the conventional
wisdom by setting shared_buffers 80% to 90% of available RAM, rather than
20% to 25%.
Cheers,
Jeff
From | Date | Subject | |
---|---|---|---|
Next Message | Samir Magar | 2016-09-11 07:10:53 | Re: How to reduce IOWAIT and CPU idle time? |
Previous Message | Venkata B Nagothi | 2016-09-11 00:34:41 | Re: How to reduce IOWAIT and CPU idle time? |