Re: Throttling PostgreSQL's CPU usage

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

 



On Tue, 8 May 2007, Daniel Griscom wrote:

Thanks for all the feedback. Unfortunately I didn't specify that this is running on a WinXP machine (the 3D renderer is an ActiveX plugin), and I don't even think "nice" is available. I've tried using the Windows Task Manager to set every postgres.exe process to a low priority, but that didn't make a difference.

Several people have mentioned having multiple processors; my current machine is a uni-processor machine, but I believe we could spec the actual runtime machine to have multiple processors/cores. I'm only running one query at a time; would that query be guaranteed to confine itself to a single processor/core?

In terms of performance, I don't think simply more power will do the trick; I've got an AMD 3200+, and even doubling the power/halving the stutter time won't be good enough.

Someone suggested "setting the CPU costs higher"; where would I learn about that?

Someone else mentioned having a custom function that sleep()ed on every row access; where would I learn more about that?

I've also been reading up on VACUUM. I haven't explicitly run it in the several days since I've installed the database (by loading a humongous data.sql file); might this be part of the performance problem?

it would cause postgres to work harder then it needs to, but it doesn't solve the problem of postgres eating cpu that you need for your rendering (i.e. it may reduce the stutters, but won't eliminate them)

a single query will confine itself to one core, but if you have a vaccum or autovaccum run it will affect the second core.

I don't know what you can do on windows beyond this though.

David Lang

P.S. make sure you get real multi-core cpu's, hyperthreading is _not_ a second core for this problem.


[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux