This sounds like the same issue that Rob van der Stel faced back in
March this year (the relevant conversation was 24th-31st).

In a savage summary of Keith Medcalf's excellent final word (posted
26th March 2015): Windows XP does not have the necessary option for
applications (such as SQLite) to FORCE writes to go through to the
underlying disk, whereas later versions do.  The speed under Windows 7
is the "real" speed; the apparent speedup under XP was an (unsafe) lie.

Graham Holden

Tuesday, October 20, 2015, 5:54:06 PM, you wrote:

> Hi all,

> Thank you for all suggestions.

> The SQLite version is the same in both systems. I do not know which version
> is, but I tried the most recent one and the times became bigger.
> I tried disabling the anti-virus, no changes apparently.
> I also tried disabling disk caching (device manager -> disk unit ->
Directives ->> Enable cache turned off), no differences.
> The hardware is the same for both systems.
> I tried running my software in a virtual machine with Windows XP, and the
> times are much smaller. Not as small as in Windows XP running directly in
> the machine, but smaller than Windows Seven.
> Regarding fsync, could you give me more details about it? I have no
> knowledge on this.


> 2015-10-17 17:48 GMT-03:00 Keith Medcalf <kmedcalf at dessus.com>:

>>
>> Have you checked the options that are set for the Hard Drive Controller
>> and Drives?  (Particularly the ones that disable OS and hardware cache
>> flushing).
>>
>> Perhaps Windows 7 drivers are doing an fsync when fync is called.
>>
>> 120 ms per transaction is pretty good for a machine that is working
>> properly.
>> 1 or 2 ms per transaction is physically impossible on rotating disk.
>>
>> > -----Original Message-----
>> > From: sqlite-users-bounces at mailinglists.sqlite.org [mailto:sqlite-users-
>> > bounces at mailinglists.sqlite.org] On Behalf Of Lucas Ratusznei Fonseca
>> > Sent: Saturday, 17 October, 2015 13:53
>> > To: sqlite-users at mailinglists.sqlite.org
>> > Subject: [sqlite] Sqlite good on Windows XP but very very slow on Windows
>> > Seven
>> >
>> > Hi all,
>> >
>> > I am using sqlite for years with my software on Windows XP, no more than
>> 1
>> > or 2 milliseconds per transaction (insert), so speed has never been a
>> > concern. Until now.
>> > I had to migrate my system to Windows Seven recently, I am still doing
>> > tests and stuff. It happens that some processes became very slow. Digging
>> > in the source code, I found out that Sqlite transactions now take about
>> > 120
>> > milliseconds, which is unacceptable for me.
>> > I tried to modify journaling and synchronization, I achieved great time
>> > reduction but not enough. Besides, I must not change journaling and sync
>> > because of integrity. I need it to work well with the defaults.
>> > Is there something I am missing?
>> >
>> > Best regards
>> > _______________________________________________



Reply via email to