Why should shared cached be serialized when all the threads are reading? I can see it for writing, but not just for reading. There must be some logic that be done to allow this I would think (he said without looking at the code).
Michael D. Black Senior Scientist Advanced Analytics Directorate Advanced GEOINT Solutions Operating Unit Northrop Grumman Information Systems ________________________________________ From: sqlite-users-boun...@sqlite.org [sqlite-users-boun...@sqlite.org] on behalf of Richard Hipp [d...@sqlite.org] Sent: Friday, August 10, 2012 12:53 PM To: General Discussion of SQLite Database Subject: EXT :Re: [sqlite] Multi-Thread Reads to SQLite Database On Fri, Aug 10, 2012 at 12:18 PM, esum <eric.b....@lmco.com> wrote: > > However, when I ran this same test with SQLITE_OPEN_READWRITE | > SQLITE_OPEN_SHAREDCACHE for the flags, I get the following [slower] > results: > > Why am I seeing such a high increase in times as I add threads in shared > cache mode as opposed to without it? > In shared-cache mode, the page cache is shared across threads. That means that each thread must acquire a mutex on the page cache in order to read it. Which means that access to the page cache is serialized. -- D. Richard Hipp d...@sqlite.org _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users