On Fri, 3 Mar 2017, Andrew Brown wrote:

Have tried setting SQLITE_OPEN_NOMUTEX, SQLITE_OPEN_FULLMUTEX. Tried shared cache, read uncommitted. Tried without shared cache, read uncommitted. Tried WAL. If I write a less efficient query, I spend less time in __raw_spin_lock, but of course then it takes longer for the queries themselves to return.

Any tips to handle massively multithreaded side by side chunked queries on the same database?

I have not seen mention of trying MMAP mode. Assuming that your many cores comes with a lot of RAM, then using a recent sqlite which supports memory-mapping the database may speed access by decreasing programmed I/O for queries which only do reads. This assumes that there is some commonality among the data used by the queries so there is a high probability that often accessed data is already in RAM.

Bob
--
Bob Friesenhahn
bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to