[Samba] Performance: FASTIO_CHECK_IF_POSSIBLE win32 call differs on
Linux / SunOS [LONG]
Leroy van Logchem
Leroy.vanLogchem at wldelft.nl
Mon Jun 30 12:17:26 GMT 2003
Hello,
I'am having huge performance problems using a application on win32 which
uses alot of .DBF files.
The app uses *alot* of small file reads, varying between 20-512 bytes
per read. On Windows there is something, only just learned this, called
fastio. This fastio acts like a cache because it reads-ahead 4096-bytes
even if you want to have 1 single byte. Ok, that's all nice _but_ after
searching and digging a couple of hours though the file-IO calls on the
win32 side with filemon, I found out some differences.
Please let me show the difference:
[Server one: Linux - superb fast, no problems]
FASTIO_QUERY_STANDARD_INFO Z:\pv8\8.1f\ADRESSEN.PV FAILURE
IRP_MJ_QUERY_INFORMATION Z:\pv8\8.1f\ADRESSEN.PV SUCCESS
FileStandardInformation
IRP_MJ_READ Z:\pv8\8.1f\ADRESSEN.PV SUCCESS Offset: 0 Length:
16384
IRP_MJ_READ* Z:\pv8\8.1f\ADRESSEN.PV SUCCESS Offset: 0 Length:
16384
FASTIO_CHECK_IF_POSSIBLE Z:\pv8\8.1f\ADRESSEN.PV SUCCESS Read:
Offset: 16384 Length: 16384
IRP_MJ_READ* Z:\pv8\8.1f\ADRESSEN.PV SUCCESS Offset: 16384
Length: 16384
FASTIO_READ Z:\pv8\8.1f\ADRESSEN.PV SUCCESS Offset: 16384
Length: 16384
FASTIO_CHECK_IF_POSSIBLE Z:\pv8\8.1f\ADRESSEN.PV SUCCESS Read:
Offset: 32768 Length: 16384
IRP_MJ_READ* Z:\pv8\8.1f\ADRESSEN.PV SUCCESS Offset: 32768
Length: 16384
FASTIO_READ Z:\pv8\8.1f\ADRESSEN.PV SUCCESS Offset: 32768
Length: 16384
and so on....
[Server two: SunOS - very slow]
FASTIO_QUERY_STANDARD_INFO V:\PerfectView\8.1f\Relbeh\ADRESSEN.PV
FAILURE
IRP_MJ_QUERY_INFORMATION V:\PerfectView\8.1f\Relbeh\ADRESSEN.PV
SUCCESS FileStandardInformation
IRP_MJ_READ V:\PerfectView\8.1f\Relbeh\ADRESSEN.PV SUCCESS
Offset: 0 Length: 16384
IRP_MJ_READ V:\PerfectView\8.1f\Relbeh\ADRESSEN.PV SUCCESS
Offset: 16384 Length: 16384
and so on...
Notice the difference here, the reading on the sun doesnt even try to
use the other systemcall FASTIO_READ.
Note: Nothing changed in the app, only the location of the database files.
My question about these matters, what can I do about it? Thanks for any
help on this.
Best regards,
Leroy
Note: It's a relation management program called PerfectView 8.
More information about the samba
mailing list