[FIXED] [Win] Speed of dB Creation

Ruslan Zasukhin sunshine at public.kherson.ua
Thu May 15 21:41:27 CDT 2003


on 5/15/03 9:30 PM, Brendan Murphy at bmurf at comcast.net wrote:

Hi Brendan,

> Yes, that fixed the problem! I get the following numbers for adding
> 100,000
> records with my test
> 
> Mac = 2.2 seconds
> PC = 1.1 seconds

You mean adding 100,000 records without flush() ?

> I have discovered a new related problem. In this new problem it is the
> Mac that is orders of magnitude slower than the PC. I modified my test
> application to do a flush after every record added to the database. I get the
> following results.
> 
> Mac = 241 seconds
> PC = 8 seconds
> 
> I have attached the modified test project to this email.

Try to remove flush() and I think you will get comparable results.

Look in latest beta I have simply comment out in FileWin::Flush()
The call to Windows FlushFileBuffers().

It looks that FlushFileBuffers() is VERY SLOW function on Windows.
I don't know why, and will investigate later.

So it looks like Windows version do not make TRUE system flush.
While MacOS still do. This is why you see adding of records 241 seconds I
think. Remove Flush() and speed should be comparable.

Uoi should understand that if you do flush after EACH Add() you get VERY
VERY big slowdown. If you add records in LOOP then better do flush every 100
records for example.


-- 
Best regards,
Ruslan Zasukhin      [ I feel the need...the need for speed ]
-------------------------------------------------------------
e-mail: ruslan at paradigmasoft.com
web: http://www.paradigmasoft.com

To subscribe to the Valentina mail list go to:
http://lists.macserve.net/mailman/listinfo/valentina
-------------------------------------------------------------



More information about the Valentina mailing list