A full table scan of 16 million rows and 55 columns on Vista with FILE_FLAG_RANDOM_ACCESS finished in 600 seconds (cold) and 499 seconds (warm) and turned Vista into a brick. The same test with the flag removed ran in 119 seconds (cold) and 99 seconds (warm), and caused no adverse problems with the OS.
Not even Sql Server could do a full table scan of the same data that fast! Same test on Sql Server 2005 on the same machine ran in a minimum of 180 seconds, and averaged 220 seconds! Oh and Sql Server's memory usage shot to 3gb as well. Fun stuff. I ran the same tests with SQLite on an XP laptop. I got 618 seconds with FILE_FLAG_RANDOM_ACCESS, and 599 seconds without the flag. Not so dramatic of a difference, but still in the right direction. So I'd agree that the hint should only be used for CE, and no other platforms. Roger quoted the CE compression blurb from this MSDN page: http://msdn.microsoft.com/en-us/library/ms923949.aspx Robert -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Roger Binns Sent: Wednesday, September 17, 2008 4:24 PM To: General Discussion of SQLite Database Subject: Re: [sqlite] Vista frustrations -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Robert Simpson 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. I agree. Open a ticket and include measurements in it. With Windows CE, setting the flag prevents compression: Using the FILE_FLAG_RANDOM_ACCESS flag in the RAM file system, which places files in the object store, will prevent a file from being compressed. If performance is an issue, this could be the correct solution. Read and write operations to a compressed file are slower than read and write operations to an uncompressed file. Roger -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFI0ZGemOOfHg372QQRAtHSAJ9fSAXY3ekwrK4g9/eTrcYYQInW6QCgvSkB e00SnZbtTmQQ1G8ZxEVTK1M= =Y3uW -----END PGP SIGNATURE----- _______________________________________________ sqlite-users mailing list email@example.com http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users _______________________________________________ sqlite-users mailing list firstname.lastname@example.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users