Any takers? Matt
-------- Original Message -------- Subject: [sqlite] Phoronix SQLite benchmark Improvements - [was Re: SQLite behaviour on FreeBSD and KVM] From: Matthew Tippett <tippe...@gmail.com> To: General Discussion of SQLite Database <sqlite-users@sqlite.org> Date: 09/29/2009 10:00 PM > Relabling to provide focus on this thread the KVM/FreeBSD specific > issues - I'll deal with that the main thread. > > So, if I could put forward to you a few suggestions. > > 1) Review the existing tests (which you have done somewhat already) > 2) Define a clear and relevant intent for benchmarking SQLite > 3) Work with Michael (from Phoronix) and myself to codify this intent > into a set of test cases and test suites > > I'll let this fork of the thread settle for a bit before taking it off list. > > Regards, > > Matthew > > > -------- Original Message -------- > Subject: Re: [sqlite] SQLite behaviour on FreeBSD and KVM > From: Simon Slavin <slav...@hearsay.demon.co.uk> > To: General Discussion of SQLite Database <sqlite-users@sqlite.org> > Date: 09/29/2009 08:40 PM > >> On 29 Sep 2009, at 10:29pm, Matthew Tippett wrote: >> >>> If there is anyone who is interested in assisting in improving the >>> quality/value/functional interest of the benchmarks, then please >>> advise. >> In SQLite, when you know you are making many changes and don't need to >> consult the data until you're finished, you surround the changes with >> BEGIN TRANSACTION and END TRANSACTION. This makes them into one big >> update rather than lots of little ones, and it means that disk gets >> updated just once (handwave here) rather than after each command. >> Naturally, this is hugely faster. No way should 2500 inserts in >> SQLite take 14 minutes. >> >> So much faster that, as Pavel noted upthread, it's suspiciously like >> what you're seeing in the result for KVM. This suggests that KVM is >> not really writing results to disk immediately. Putting those INSERTs >> into one transaction could make Ubuntu 9.10 (not KVM) as fast or >> faster than the result you're getting for KVM. Sorry, I have no Linux >> to test it on. >> >> You could modify the sqlite test to reflect this. You could perhaps >> turn sqlite-2500-insertions.txt into 50 transactions, with BEGIN >> TRANSACTION and END TRANSACTION around each 50 INSERT commands. Or >> you could have two tests: make two copies of sqlite-2500- >> insertions.txt, leave one as it is and put BEGIN TRANSACTION and END >> TRANSACTION at the beginning and end of the other. This would test >> both 2500 individual INSERT commands and one transaction of 2500 >> INSERTs, testing SQLite as both kinds of application would need to use >> it. >> >> I know nothing about KVM but I assume that it's operating correctly >> here: since the entire machine is virtualised it doesn't matter that >> it's not really writing to real disk. >> >> Simon. >> _______________________________________________ >> 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 _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users