Re: Performance tuning question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Chris,

I just finished running some benchmarks on an underpowered server
compared to the one I am running in production.
My initial tests were run on an ampty database, pg_xlog on the same
spindle.
Stored procedure execution speed was ~15 ms.

I then restored the production database so I would have ~3GB database.
Execution time for the stored procedure went up to about 40 ms average
(with a miuch higher variance), but with a processing speed of 18 stored
procedure calls per second.

I them moved pg_xlog to a separate spindle.
Execution time went down to about 17 ms

Beyond moving pg_xlog to a separate spindle, are there any other things
you can think of which may improve the performance?


> -----Original Message-----
> From: Chris Mair [mailto:chrisnospam@xxxxxxxx] 
> Sent: Monday, August 07, 2006 4:38 PM
> To: Benjamin Krajmalnik
> Cc: pgsql-admin@xxxxxxxxxxxxxx
> Subject: RE: [ADMIN] Performance tuning question
> 
> 
> > isweb01# vmstat 10
> >  procs      memory      page                    disks     faults
> > cpu
> >  r b w     avm    fre  flt  re  pi  po  fr  sr ad4 ad6   in 
>   sy  cs us
> > sy id
> >  1 0 0  648368  47052 10322   0   0   0 7505 136   0   0  
> 839 6241 2114
> > 18 10 71
> >  1 0 0  651392  42464 9823   0   0   0 6624   0   0   0  
> 667 5374 1703
> > 16 10 73
> >  0 0 0  648368  42316 9672   0   0   0 6677   0   0   0  
> 652 5290 1674
> > 16 10 74
> >  1 0 0  650300  39840 6843   0   0   0 4695   0   0   0  
> 866 6123 2217
> > 15 10 76
> >  0 0 0  648388  39540 6913   0   0   0 4808   0   0   0 
> 1279 9694 3367
> > 18 10 72
> >  1 0 0  649764  36780 10528   0   0   0 7337   0   0   0 
> 1182 9207 3127
> > 23 11 66
> >  1 0 0  651372  33180 13763   0   0   0 9392   0   0   0 
> 1129 9458 2950
> > 26 13 61
> >  1 0 0  651452  57444 14711   0   0   0 10087 666   0   0  
> 889 8044 2315
> > 23 13 63
> >  1 0 0  650664  55956 12388   0   0   0 8479   0   0   0  
> 773 6791 2006
> > 20 11 68
> >  2 0 0  649632  55152 10621   0   0   0 7256   0   0   0  
> 805 5811 1985
> > 18 11 71
> > 
> > I have increased the shared memory by 50%, and temp_buffers 
> to 5000, 
> > but no noticeable difference in speed.
> > As I mentioned, the system has 2 drives in RAID-1, so pg_xlog is on 
> > the same disk.
> > Would moving pg_xlog to a different disk increase the performance?  
> > The server I am currently running this on is a temporary 
> server while 
> > I rebuild our main data server which is SCSI.
> > Right now I am going to test a few things on a secondary 
> dev server I 
> > set (old server with IDE).  This one has 2 drives, so I 
> will run some 
> > tests with pg_xlog on the same drive and on a separate drive.
> 
> Having pg_xlog on another disk than the data itselft helps a 
> lot for frequent writes/updates.
> 
> Still it's not so clear to me on *where* exactly your 
> performance problem is. Is it that 40 msec time you 
> mentioned? On *average* your machine doesn't seem to be 
> overloaded at all from reading vmstat's output. Do you need 
> do have this call terminate in less than 40 msec, even though 
> average load is no problem? Then you have a responsivness 
> problem, and not an easy one, I'm afraid :/ FreeBSD (or 
> Linux) are not real time systems that can guarantee they will 
> complete something within msecs.
> 
> If this is the case (and I'm a bit guessing here), I'm afraid 
> you need to buffer data in the client.
> 
> 
> > Also, I
> > will load the data on an empty database as well as a 
> restored database.
> > 
> > I really need to find a way to make this faster :(  The monitoring 
> > agent which we use has a single logging thread, and if the database 
> > does not keep up with it it will stall.
> 
> Does it buffer at all?
> 
> > Worst case, I will virtualize the monitroing agent, but that will 
> > require quite a bit of work on our side.
> 
> 
> Bye, Chris.
> 
> -- 
> 
> Chris Mair
> http://www.1006.org
> 
> 
> 


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux