[x64] Low compare speed in Synchronize Dirs

Bug reports will be moved here when the described bug has been fixed

Moderators: white, Hacker, petermad, Stefan2

Post Reply
xdimka
Junior Member
Junior Member
Posts: 4
Joined: 2011-09-20, 20:07 UTC

[x64] Low compare speed in Synchronize Dirs

Post by *xdimka »

Menu/Synchronize Dirs

dramaticaly decreasing speed in comparing process between two folders over ver. 7.56a

OS: Windows7 Ultimate x64
Sob
Power Member
Power Member
Posts: 941
Joined: 2005-01-19, 17:33 UTC

Post by *Sob »

xdimka
Junior Member
Junior Member
Posts: 4
Joined: 2011-09-20, 20:07 UTC

Post by *xdimka »

Im using default scheme and its not flickering, only comparing process is slow
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48079
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

It's indeed the same problem. You just don't see any flickering because the Windows aero theme seems to double buffer the drawing to the display.
Author of Total Commander
https://www.ghisler.com
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48079
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Fixed according to the above thread!
Author of Total Commander
https://www.ghisler.com
User avatar
Balderstrom
Power Member
Power Member
Posts: 2148
Joined: 2005-10-11, 10:10 UTC

Post by *Balderstrom »

Is this fixed?

I notice before there is even any chance for there to be window drawing updates, during the reading directories phase::

With: 13,106 Directories & 415,165 files.
TC 7.56a Time: ~50s to read

TC 8.0b2 (x64) Times
  • 30s, 3400 dirs
  • 60s, 3800 dirs
  • 90s, 4300 dirs
  • 150s, 9813 dirs
  • 180s, 10809 dirs
  • 250s, 13106 dirs
TC 8.0b2 took 5 times as long to read the same drive as 7.56a, and if anything some of the data could of been cached (TC 8 went second).
User avatar
Samuel
Power Member
Power Member
Posts: 1930
Joined: 2003-08-29, 15:44 UTC
Location: Germany, Brandenburg an der Havel
Contact:

Post by *Samuel »

2Balderstrom
What about TC 8.0b2 (x32)

2ghisler(Author)
Do you update the GUI after each new directory / file?
Wouldn't this be a perfect position for the new way of updating the GUI you introduced for the copy dialogs? (update the GUI after 100 or 200 ms)

This would be also a possible improvement in the "compare by content" phase of the synchronization. (with many small files)
Sob
Power Member
Power Member
Posts: 941
Joined: 2005-01-19, 17:33 UTC

Post by *Sob »

In other thread I wrote it's fixed, but it's not completely true. I don't know why I missed 32-bit version. I tested again all versions and for me the results are:

TC8b1-32, TC8b2-32, TC8b1-64: horribly slow, flickering list and maxing out one CPU core all the time

TC 7.56a, TC8b2-64: fast, non-flickering list, CPU usage is high only when data are already cached in memory, otherwise HDD is the bottleneck

Directory reading phase (before actually comparing the files) is roughly the same with all.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 48079
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

The bug report was about x64 only, so I didn't change the 32-bit code - it should be the same as in TC 7.56a. I will check whether anything was changed in the 32-bit code which may make it flickering.
Do you update the GUI after each new directory / file?
I'm just invalidating the affected lines, but it seems that I'm getting redraw events for the entire list. Beta 2 x64 now uses a function to check which part of the list really needs to be refreshed (GetClipBox).
Author of Total Commander
https://www.ghisler.com
Post Reply