On May 10, 2007, at 11:08 PM, Juri Wichanow wrote:

For "create index.." in large database : "pragma default_cache_size = 2000;"

For "select ..." -- "pragma default_cache_size = 12000000;"

Hmm, quite interesting.

I would like to share my naive observations, which led me to believe the cache_size was important (although I am now beginning to doubt this, see below).

First we run the indexing on server 1 - I am essentially the only user, but we only have 2GB of ram. I see (this is using top as is everything else I say about performance) that very quickly, the memory usage caps out and the cpu usage drops. My conclusion - an I/O bottleneck. So I increase cache_size and surely - the program runs longer before it seems to bottleneck. So I switch to another server (about the same speed, 16GB ram, unknown I/O performance compared to the first one), and increase the cache_size dramatically, hypothesizing that I could just have the entire db in ram (I know think I understand that I will still have to do I/O when writing the index). And surely I see no drop in CPU usage over the five days the program runs before the server gets rebooted. At this point (yesterday) I was convinced that the new server was dramatically better. Nevertheless I had never terminated my old runs on server 1. And lo and behold, yesterday I accidently discovered they were finished in around 7-8 days. This is something that makes no sense to me, but it could have something to do with how top measures cpu usage or whatever. Or I could have made a mistaken observation.

Well, I am curious now, so I am going to time this carefully on various servers (and report my results back to the list of course).

Kasper

-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to