On 9/24/07, Kees Nuyt <[EMAIL PROTECTED]> wrote:
>
> On Mon, 24 Sep 2007 07:13:51 -0700, Gururaja Nittur wrote:
>
> >Sqlite experts,
> >
> >I am running Sqlite version 3.4.1. I ran some performance tests and
> >observed that sqlite sometimes consumes more CPU than normal (I am
> >using same dataset, all inserts and recreating new database for each
> >test). Tried running oprofiile and got the following result. The
> >function 'syncJournal' is taking around 60% of total Sqlite's CPU
> >usage.
> >
> > 1. Is this normal behaviour? If not, is there a known fix for this?
>
> Do you use transactions? If not, every INSERT or UPDATE is a
> separate transaction, causing a lot of overhead because the
> journal is flushed for every transaction.

Yes! I do use transaction. But, I am testing my application's worst
case here (Inserting one record per transaction).

>
> > 2. Are there any tunables that can be used to ease the issue?
>
> Several pragma's are available, the documentation is quite
> clear:  http://www.sqlite.org/pragma.html
>
> Also read:
> http://www.sqlite.org/cvstrac/wiki?p=PerformanceConsiderations
>
> >PS: My database is pretty small.
> >I am setting max_page_count=896 and
> >page_size = 512 (Max database size = 3.5MB).
>
> I don't understand that one.
> 512 Bytes * 896 Pages would be 458752 Bytes.
> I think you would need 7168 pages of 512 bytes to accomodate 3.5
> MByte.

Oops! my fault. You are right. I had changed the max_page_count=896 to
test with smaller database. I do see similar behavior when max size is
3.5M.

>
> Ideally, the page_size should equal the allocation unit (for
> Window: the cluster size of the formatted disk).
> Also, if your rows can be large, a too small page_size would
> cause overflow pages, and thus additional overhead.

I expect most of my rows to be less than 512 bytes and hence using
smaller page_size.

Thanks for the response. I just wanted to find out if there are any
known issues with syncJournal. I will tweak more parameters and try to
measure again.


Best regards,
Guru

>
> >Thanks in advance.
>
> I hope this helps.
> --
>   (  Kees Nuyt
>   )
> c[_]
>
> -----------------------------------------------------------------------------
> To unsubscribe, send email to [EMAIL PROTECTED]
> -----------------------------------------------------------------------------
>
>

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

Reply via email to