I update sqlite in my Android mobile phone from 3.9.2 to 3.16.2. And I find the default page_size in 3.9.2 is 1024 while in 3.16.2 is 4096 (changed since 3.12.0). I think SQLITE_DEFAULT_PAGE_SIZE has great effect on the performance so I use speedtest1.c to test it.
There are many test cases in speedtest1.c and case 270 is a DELETE case which is the most time-consuming one. There is a result. (different version + different page_size) 3.16.2+4096 3.16.2+1024 3.9.2+4096 3.9.2+1024 Case 270: 5.695s 5.908s 2.307s 6.130s TOTAL 75.182s 79.811s 58.723s 81.732s It is easy to find 3.9.2+4096 is extremely faster than others. And page_size has great effect on 3.9.2 but has only a small effect on 3.16.2. But why? I think 3.16.2 should faster than 3.9.2 according to the measurements of sqlite (https://www.sqlite.org/cpu.html) but I guess 3.9.2 used 1024 at that time. Could someone give me any explanations? The result is strange but I think it is reproducible if we set SQLITE_DEFAULT_PAGE_SIZE=4096 in 3.9.2. Thank you. -- Sent from: http://sqlite.1065341.n5.nabble.com/ _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users