> -----Original Message----- > From: sqlite-users <sqlite-users-boun...@mailinglists.sqlite.org> > On Behalf Of Jens Alfke > Sent: Thursday, December 26, 2019 3:11 PM > To: SQLite mailing list <sqlite-users@mailinglists.sqlite.org> > Subject: Re: [sqlite] Causal profiling > > > > > On Dec 25, 2019, at 2:53 PM, Doug <dougf....@comcast.net> wrote: > > > > I wrote an application in Qt which uses SQLite. Therefore, I > invoke SQLite functions with some wrapper. For a 9% performance > improvement in SQLite using the direct call versus indirect call > (as discussed in the talk), cannot the wrapper functions be > changed so my application doesn't know the difference? > > This change would break the API that lets you set concurrency > levels per connection; instead, the concurrency would be hardcoded > at compile time. _You_ may not be using this API, but there are > definitely developers who do.
Can you explain what the API is that you use to "set concurrency levels per connection", please? Is it a parameter on open() or its own function call? And how would the API break, exactly? The talk suggested removing the SQLite virtual table of functions (specifically the call to free a mutex). The user calls the function directly. How does that break an API? > This would especially be a problem for environments where SQLite > is provided as a shared library in the operating system (e.g. iOS, > macOS). The concurrency level would then be up to the platform > vendor, not the application developer. (Unless they bundle their > own copy of SQLite in their app.) > > One possible workaround would be a compile option that enables the > direct calls, but which is off by default. People who wanted > mutexes but with direct calls could then set that option. > > [deletia] > > —Jens > _______________________________________________ > sqlite-users mailing list > sqlite-users@mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite- > users _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users