[9.0ß1] High CPU% after update: Icons All associated+EXE/LNK

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

Moderators: Hacker, petermad, Stefan2, white

merkur
New Member
New Member
Posts: 1
Joined: 2016-06-14, 09:23 UTC

[9.0ß1] High CPU% after update: Icons All associated+EXE/LNK

Post by *merkur »

Hi,

after updating from 8.52a to 9.0ß1 I noticed a constant high CPU usage of totalcmd-process (25%, probably one full core) both 32bit and 64bit.
After changing Configuration - Icons from
All associated+EXE/LNK
to
All associated
CPU usage dropped to zero. Changing back, CPU usage went high again.
Reverting to 8.52a, CPU usage was zero again.
OS: Windows 10 Pro 64bit Version 1511 (Build 10586.318)

(Offtopic:) As this seems to be my first post here after >20years of Win/TotalCommander-usage, let me thank you for this wonderful program!


Edit: with a new/clean config (moved ini-files) there is no high CPU usage anymore. Strange thing is: after using my old ini-files again, there's still no high CPU usage. Now I can't reproduce the problem anymore..
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50865
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Maybe TC was busy loading an icon in the background from a big EXE file? Then the virus scanner will run in the context of TC and cause high CPU load.
Author of Total Commander
https://www.ghisler.com
okpc
Junior Member
Junior Member
Posts: 6
Joined: 2016-06-18, 20:26 UTC

Post by *okpc »

9.0ß2 x64 on Windows 7 confirmed.

All associated+EXE/LNK - up to 25% CPU Load
All associated - 0-2% CPU Load

Screenshot - m66F3Cb on imgur (I'm a newcomer on this forum, so I can't give it like URL)

With some folders it's OK, with some folders it eats CPU. As you can see, there is no big files on screenshot.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50865
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

TC loads icons for EXE/LNK in a background thread. I guess that you have some big EXE files in that directory - reading icons from them will trigger the antivirus, which can take several seconds to scan a single EXE file.
Author of Total Commander
https://www.ghisler.com
okpc
Junior Member
Junior Member
Posts: 6
Joined: 2016-06-18, 20:26 UTC

Post by *okpc »

I've found at least one issue: if my default viewer for HTML files is Opera - TC for some reason can't load icon and I guess doesn't stop trying to read it (that's why it use many CPU resources). It doesn't matter how long I'll be waiting - TC can't read, keep trying and show default icon. But it works well when I change default HTML viewer to Chrome or Firefox.

I don't know, maybe there are more 'bad' application from where TC can't fetch the icon, I've found just one.
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50865
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Which virus scanner do you use?
Author of Total Commander
https://www.ghisler.com
okpc
Junior Member
Junior Member
Posts: 6
Joined: 2016-06-18, 20:26 UTC

Post by *okpc »

Avast Free 11.2.2262

I've tried to stop real-time protection - the same behavior.

Also I've tested on virtual machine (but I have Win 10 x64 there) - it works well, without high load and with Opera icon on file.

I don't know, maybe it's with my installation of Opera or TC (it's not a clear installation, I've updated previous version). Tried clear installation of TC9b2 x32 - situation with high load is reproduced
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50865
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Normally turning off real time protection only turns off the virus warnings, the actual scanner still runs in the background (and can cause a slowdown).
Author of Total Commander
https://www.ghisler.com
archon810
Junior Member
Junior Member
Posts: 22
Joined: 2016-06-08, 21:07 UTC

Post by *archon810 »

Interestingly, I just noticed TC using ~22% CPU (probably 100% of one core), but on 9 beta 3.

Here's a screenie: http://i.imgur.com/5udb7x9.png.

I've no idea why.
Cruysen
Junior Member
Junior Member
Posts: 18
Joined: 2012-09-28, 08:31 UTC
Location: St.Hubert nl
Contact:

Post by *Cruysen »

Same issue here. (TC9.0ß3)
I (have to) use Kasperskey v10.1 as virus scanner.

Changing 'Configuration - Icons' solved the problem.
But I guess it is not a problem of TC but of the virus scanner. (Re-scanning every time a file is read?)

There are no EXE/LNK files in the opened screens.
okpc
Junior Member
Junior Member
Posts: 6
Joined: 2016-06-18, 20:26 UTC

Post by *okpc »

Cruysen, archon810,

hey guys, did you notice any particular types which may cause such behavior? Is TC show icons after some high load time or this is infinite process?
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50865
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Maybe something is indeed wrong, e.g. TC trying to reload the same icon again and again? To diagnose it, please get the free tool "process monitor" from www.sysinternals.com. It will tell you exactly what is going on.
Author of Total Commander
https://www.ghisler.com
okpc
Junior Member
Junior Member
Posts: 6
Joined: 2016-06-18, 20:26 UTC

Post by *okpc »

Christian, what exactly should we did with process monitor?

Here I filtered output by process name - http://i.imgur.com/xpePyGx.png. And the same operations without the end...
Sob
Power Member
Power Member
Posts: 945
Joined: 2005-01-19, 17:33 UTC

Post by *Sob »

Probably the same thing happens here too. Test directory contains file x.xml. TC 9.0 beta3 has clean ini. When I enter this directory, TC (x64 only) starts eating up one full cpu core. The following shows in endless loop in Process Monitor:

Code: Select all

"Time of Day","Process Name","PID","Operation","Path","Result","Detail"
"20:19:08,0228984","TOTALCMD64.EXE","7756","CreateFile","C:\Temp\tc\test","SUCCESS","Desired Access: Read Data/List Directory, Read Attributes, Synchronize, Disposition: Open, Options: Synchronous IO Non-Alert, Attributes: n/a, ShareMode: Read, Write, Delete, AllocationSize: n/a, OpenResult: Opened"
"20:19:08,0229252","TOTALCMD64.EXE","7756","FileSystemControl","C:\Temp\tc\test","INVALID DEVICE REQUEST","Control: FSCTL_LMR_QUERY_DEBUG_INFO"
"20:19:08,0229398","TOTALCMD64.EXE","7756","QueryDirectory","C:\Temp\tc\test\x.xml","SUCCESS","Filter: x.xml, 1: x.xml"
"20:19:08,0229606","TOTALCMD64.EXE","7756","CloseFile","C:\Temp\tc\test","SUCCESS",""
"20:19:08,0333140","TOTALCMD64.EXE","7756","RegQueryKey","HKCU\Software\Classes","SUCCESS","Query: Name"
"20:19:08,0333348","TOTALCMD64.EXE","7756","RegQueryKey","HKCU\Software\Classes","SUCCESS","Query: HandleTags, HandleTags: 0x0"
"20:19:08,0333467","TOTALCMD64.EXE","7756","RegQueryKey","HKCU\Software\Classes","SUCCESS","Query: HandleTags, HandleTags: 0x0"
"20:19:08,0333628","TOTALCMD64.EXE","7756","RegOpenKey","HKCU\Software\Classes\CLSID\{AB968F1E-E20B-403A-9EB8-72EB0EB6797E}\InProcServer32","NAME NOT FOUND","Desired Access: Query Value"
"20:19:08,0333831","TOTALCMD64.EXE","7756","RegOpenKey","HKCR\CLSID\{AB968F1E-E20B-403A-9EB8-72EB0EB6797E}\InProcServer32","NAME NOT FOUND","Desired Access: Query Value"
"20:19:08,0334077","TOTALCMD64.EXE","7756","RegQueryKey","HKCU\Software\Classes","SUCCESS","Query: Name"
"20:19:08,0334212","TOTALCMD64.EXE","7756","RegQueryKey","HKCU\Software\Classes","SUCCESS","Query: HandleTags, HandleTags: 0x0"
"20:19:08,0334331","TOTALCMD64.EXE","7756","RegQueryKey","HKCU\Software\Classes","SUCCESS","Query: HandleTags, HandleTags: 0x0"
"20:19:08,0334465","TOTALCMD64.EXE","7756","RegOpenKey","HKCU\Software\Classes\CLSID\{AB968F1E-E20B-403A-9EB8-72EB0EB6797E}\InProcServer32","NAME NOT FOUND","Desired Access: Query Value"
"20:19:08,0334622","TOTALCMD64.EXE","7756","RegOpenKey","HKCR\CLSID\{AB968F1E-E20B-403A-9EB8-72EB0EB6797E}\InProcServer32","NAME NOT FOUND","Desired Access: Query Value"
"20:19:08,0334811","TOTALCMD64.EXE","7756","RegQueryKey","HKCU\Software\Classes","SUCCESS","Query: Name"
"20:19:08,0334933","TOTALCMD64.EXE","7756","RegQueryKey","HKCU\Software\Classes","SUCCESS","Query: HandleTags, HandleTags: 0x0"
"20:19:08,0335041","TOTALCMD64.EXE","7756","RegQueryKey","HKCU\Software\Classes","SUCCESS","Query: HandleTags, HandleTags: 0x0"
"20:19:08,0335168","TOTALCMD64.EXE","7756","RegOpenKey","HKCU\Software\Classes\CLSID\{AB968F1E-E20B-403A-9EB8-72EB0EB6797E}\InProcServer32","NAME NOT FOUND","Desired Access: Query Value"
"20:19:08,0335314","TOTALCMD64.EXE","7756","RegOpenKey","HKCR\CLSID\{AB968F1E-E20B-403A-9EB8-72EB0EB6797E}\InProcServer32","NAME NOT FOUND","Desired Access: Query Value"
Changing icon options to "All associated" does make a difference. Missing clsid comes from here:

Code: Select all

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\xmlfile\ShellEx\IconHandler]
@="{AB968F1E-E20B-403A-9EB8-72EB0EB6797E}"
And it does exist, but only in Wow6432Node:

Code: Select all

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Wow6432Node\CLSID\{AB968F1E-E20B-403A-9EB8-72EB0EB6797E}\InprocServer32]
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\CLSID\{AB968F1E-E20B-403A-9EB8-72EB0EB6797E}\InprocServer32]
Some info about active threads if it helps:
http://web.hisoftware.cz/sob/tc/44379-threads.png
http://web.hisoftware.cz/sob/tc/44379-threads.txt
PAB
Junior Member
Junior Member
Posts: 10
Joined: 2005-03-27, 10:17 UTC
Location: Germany

Post by *PAB »

On my computer TC consumes 10% of cpu power while displaying a git controlled directory. TGitCache of TortoiseGit consumes .75%

Code: Select all

TOTALCMD64.EXE	11.63	39.480 K	80.176 K	
TGitCache.exe	  0.75	139.980 K	61.268 K
Edit:
These are the working threads:

Code: Select all

ThreadID CPU  Cycles Delta  Start Address
15264	7.46	2.065.675.270	TOTALCMD64.EXE+0x15520
12436	3.48	963.672.279	TOTALCMD64.EXE+0x1a4a0
18420	0.59	164.795.361	TOTALCMD64.EXE+0x15520
Post Reply