Leroy van Logchem
2003-Jun-30 12:17 UTC
[Samba] Performance: FASTIO_CHECK_IF_POSSIBLE win32 call differs on Linux / SunOS [LONG]
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.
Possibly Parallel Threads
- Unable to detect an APC Smart protocol UPS. Windows. APC Smart protocol driver 3.04 (2.6.5-3723:3731M)
- PDF Library
- Unable to detect an APC Smart protocol UPS. Windows. APC Smart protocol driver 3.04 (2.6.5-3723:3731M)
- bug report: apcsmart (WIN) 940-0024C connect fail, problem with command 'E'
- *update* SMB Trans2 Response STATUS_OBJECT_NAME_NOT_FOUND Problem