I am running vista my personal pc. I'll try to take a look into how not having this flag affects performance when I get home.
On Wed, Sep 17, 2008 at 5:29 PM, Robert Simpson <[EMAIL PROTECTED]> wrote: > Ideally, at least on non-CE platforms, I'd like see SQLite not give the OS > any hints about caching. However, I'm not sure what kind of performance hit > (if any) that would have on Windows. It's already been proven that > providing the hint on WinCE is beneficial. > > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Roger Binns > Sent: Wednesday, September 17, 2008 2:02 PM > To: General Discussion of SQLite Database > Subject: Re: [sqlite] Vista frustrations > > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Robert Simpson wrote: >> The purpose of a cache is to improve performance and responsiveness. Any >> cache that uses all physical memory, forces all other apps to the paging >> file > > All current operating systems do this, using heuristics to determine how > much of each running application to leave in memory while using "spare" > memory for filesystem cache and dynamically changing allocation based on > demand. Sometimes they mess up to the detriment of idle applications. > However that is not the bit I am talking about as it is not controlled > by flags when opening files and instead is part of the core operating > system code. (You often see this issue when copying files larger than RAM). > > What is under discussion is how the operating system is using the cache > that it does decide to allocate for SQLite. If you tell it that a file > is sequential access then that means that read ahead is good and that > data already read can be discarded. If you tell it that a file is > random access then read ahead is bad (it has the disk occupied when the > next random request comes in) and already read data should be kept. > SQLite does not know and should be leaving it up to the operating > system. Your tests prove that when that is done on Vista, performance > of SQLite is better and other applications are less adversely affected. > >> The real frustration is that this seems to be a rather obvious bug in > Vista, >> and definitely not SQLite's responsibility. > > This is conflating two issues. One is the tradeoff between RAM usage > for cache vs idle applications. You can argue that is a bug, or more > accurately there are circumstances under which the tradeoff picks wrong > values, and is very hard to get right. Example underlying details are > at http://blogs.technet.com/markrussinovich/archive/2008/02/04/2826167.aspx > > The second issue is the performance differences when random access, > sequential and no flags are given while opening the file and the > resulting performance. In this case a file is accessed mostly > sequentially but the random access flag is given. Performance was worse > than letting the operating system use its own heuristics. That is > hardly surprising or a bug. > > Roger > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.6 (GNU/Linux) > > iD8DBQFI0XBYmOOfHg372QQRAmKfAJ4pWVfZ8LS2ET+Y5CCCC5FGT3Am9wCfZg4e > McaZrcLUXQJhU7i1Gw5+cRk= > =CQg5 > -----END PGP SIGNATURE----- > _______________________________________________ > 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