On Mon, 19 Jan 2015 13:30:24 -0500 Andy Jewell <a...@alexa.com> wrote:
> I have a single threaded application, which at its heart is > > while (true) { > open a database // any one of thousands, so I can’t just keep > it open do a select > close the database > } > > With that part unchanged, does anyone have any optimization > suggestions? I am compiling the amalgamation myself, so I’m open to > both compile time and run time options. I don’t need to worry about > other processes updating the database. I’m not looking for SQL advice > at this time. If your application is single threaded, you can move the open/close out of while(true). You say that you can't keep it open, because you work with thousands databases, but you can keep them open with different db pointer structure (sqlite3 *), there's no limit to that. There's a limit (30/62) if you try to attach a database to another db already open. > Openning the database with SQLITE_OPEN_READONLY was an enourmous > help. Explicitly turning off threading didn’t seem to help much. > Changing my compiler optimization level from -O2 to -O3 (gcc 4.4) > made it larger but no faster. > > > many thanks, > adj > > _______________________________________________ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users --- --- Eduardo Morras <emorr...@yahoo.es> _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users