High CPU usage with Firefox (also, freeze issues)

randomusername

Beta Tester
I regularly experience Adguard's service hogging ~ 50% of my CPU cycles, as a "drive-by" also driving my Firefox up to 25%. Of course, that makes the noise output rather annoying, but it can be fixed with restarting the service. However, this immediately freezes Firefox (probably because Adguard's extension is trying to find the shut down service?) too.

This issue has been there for a couple of Fx and AG versions now. Just wanted to give you a hint.
 

avatar

Administrator
Staff member
Administrator
Is there an easy way to reproduce this issue?

I may need to look at Adguard's dump file (you can make it from Task Manager, find AdguardSvc.exe process there and click "Create DUMP file").

However, this immediately freezes Firefox (probably because Adguard's extension is trying to find the shut down service?) too.
More likely that FF is frozen because stopping service leaves some connections in semi-processed state.
 

avatar

Administrator
Staff member
Administrator
We've examined the dump file.

There're three ongoing connections at that moment.

These are endpoints:
http://www.newsblur.com/socket.io/1/websocket/iPwDzlRPE4HcIRU19GyZ
http://www.newsblur.com/socket.io/1/jsonp-polling/vDnf_wxf4sqMBTG89G9q?t=1452104770794&i=6
http://127.0.0.1:12546/

All three are using WS protocol. Third seems to be originated from one of your browser add-ons. First two - I don't know, maybe they are from that website. However I am not sure if the problem is in these connections.

I believe that we need one more dump. Then we'll compare it with the previous one and see the real cause.
 

avatar

Administrator
Staff member
Administrator
We've examined that dump and here are two things present in both dumps.

1. Processing of a WS connection:
http://www.newsblur.com/socket.io/1/websocket/vbDM_eKN08Cmwx6Rdqw1

2. A thread performing some IO exception handling (I am not sure it has something to do here as that's about Adguard UI-SVC IO).
Code:
Not Flagged     10592   0   Worker Thread   Worker Thread   System.ServiceModel.Internals.dll!System.Runtime.IOThreadTimer.TimerManager.OnWaitCallback  Normal
                        [Managed to Native Transition]   
                        mscorlib.dll!System.Threading.WaitHandle.WaitAny(System.Threading.WaitHandle[] waitHandles, int millisecondsTimeout, bool exitContext)   
                        System.ServiceModel.Internals.dll!System.Runtime.IOThreadTimer.TimerManager.OnWaitCallback(object state)     
                        System.ServiceModel.Internals.dll!System.Runtime.IOThreadScheduler.ScheduledOverlapped.IOCallback(uint errorCode, uint numBytes, System.Threading.NativeOverlapped* nativeOverlapped)    
                        System.ServiceModel.Internals.dll!System.Runtime.Fx.IOCompletionThunk.UnhandledExceptionFrame(uint error, uint bytesRead, System.Threading.NativeOverlapped* nativeOverlapped)   
                        mscorlib.dll!System.Threading._IOCompletionCallback.PerformIOCompletionCallback(uint errorCode, uint numBytes, System.Threading.NativeOverlapped* pOVERLAP)  
                        [Native to Managed Transition]

Meanwhile, we have missed to ask you one very important thing.

Along with the process dump I'd like to get the information about which thread consumes more CPU time.
You can see this in process explorer: http://screencast.com/t/HUMDuMnoQl6U

Could you please make one more (I hope it will be the last) dump and also take a screenshot of "Threads" tab from the process explorer?
 

avatar

Administrator
Staff member
Administrator
Usually, Firefox takes ~ 40% of CPU time and Adguard takes ~ 30-35%. Exiting Adguard makes Firefox return back to normal.
So it seems that it is newsblur WS connection causing it. Exiting AG just closes that connection and it explains why CPU go normal.

It can be easily checked: next time you face that issue, refresh newsblur.com page (or close the tab).
If it does not help, then I guess we'll need one more dump + threads from process explorer.
 
Top