Results 1 to 2 of 2
  1. #1
    Join Date
    Jan 2018
    Posts
    1

    Default Potential Scanning Optimization

    It's possible Beyond Compare already does this, but I was recently developing my own program with the need to perform file scanning / changes on a network file server very quickly.

    Skeptical about the performance of the reentrant-oriented standard Windows Find APIs, I experimented with the lower-level NtOpenFile/NtQueryDirectoryFile with a large FileInformation buffer and ReturnSingleEntry = FALSE. When it came to enumerating a local directory, the change made very little impact but when enumerating a remote server, performance was about twice as fast on a server that is on same network switch that I am. I suspect the performance multiplier would be higher on higher-latency servers.

    Just a curiosity...

  2. #2
    Join Date
    Oct 2007
    Location
    Madison, WI
    Posts
    2,529

    Default

    Beyond Compare already uses FindFirstFileEx with the FIND_FIRST_EX_LARGE_FETCH flag, which should have the same results as calling the low-level routines like you are. For compatibility reasons, we only do large fetches when connecting to Windows servers and some versions of macOS.
    ZoŽ P Scooter Software

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •