In your logs the actual filenames entered to the log on the client side is:
12:12:08.815
to
12:12:09.549
That is under 1 second. It doesn't take long to just list whole strings.
SSH_FXP_OPENDIR, SSH_FXP_READDIR, etc is what's taking time.
eg...
That is pushing towards 3 minutes.
The interaction with the SSH server that is taking time. Although, I don't know how well the UI responds to listing 40k files and I don't see that expressed in the logs.
A rough estimate is at 90 char per filename is a list of nearly 4MB in size possibly to split apart into filename, size, type, etc. That too can take time in order to display it into the UI.
There's various possibilities for the 3 applications to be of different speed. Multi threading ability, connection stuff, UI response speed, sorting/parse/split code (or whatever), possibly settings, and possibly more.
In theory, 73 seconds / 3 threads is 24 seconds and 73 / 8 is 9 seconds. That closely matches the numbers of the other 2 clients that it could potentially be multi threading related. 8 threads would need a minimum of 4 cores with 2 threads each core if its multi threading.
It's possible too for multi connections, but I didn't look at that with your logs to see if the server connection time is similar or cut down. Otherwise, it would be a weird coincidence.
12:12:08.815
to
12:12:09.549
That is under 1 second. It doesn't take long to just list whole strings.
SSH_FXP_OPENDIR, SSH_FXP_READDIR, etc is what's taking time.
eg...
12:09:28.735 Listing directory
12:09:28.735 Type: SSH_FXP_OPENDIR
to
12:12:08.673 Type: SSH_FXP_READDIR
That is pushing towards 3 minutes.
The interaction with the SSH server that is taking time. Although, I don't know how well the UI responds to listing 40k files and I don't see that expressed in the logs.
A rough estimate is at 90 char per filename is a list of nearly 4MB in size possibly to split apart into filename, size, type, etc. That too can take time in order to display it into the UI.
There's various possibilities for the 3 applications to be of different speed. Multi threading ability, connection stuff, UI response speed, sorting/parse/split code (or whatever), possibly settings, and possibly more.
In theory, 73 seconds / 3 threads is 24 seconds and 73 / 8 is 9 seconds. That closely matches the numbers of the other 2 clients that it could potentially be multi threading related. 8 threads would need a minimum of 4 cores with 2 threads each core if its multi threading.
It's possible too for multi connections, but I didn't look at that with your logs to see if the server connection time is similar or cut down. Otherwise, it would be a weird coincidence.