Opened 16 years ago
Closed 16 years ago
#765 closed Defect (fixed)
BOINC Manager uses 100% CPU sometimes
Reported by: | Nicolas | Owned by: | charlief |
---|---|---|---|
Priority: | Major | Milestone: | 6.6 |
Component: | Manager | Version: | 6.3.21 |
Keywords: | Cc: |
Description
Since 6.3 (I don't know exactly which minor version), the manager has some strange behavior with CPU usage. It uses 100% CPU on startup, and then drop down to 0. Later it starts using 100% again. While it's using 100%, it still remains responsive, so the CPU usage is probably from the second thread used for async RPCs, and not from the main thread running the GUI event loop.
It seems to stop eating CPU as soon as it gets any input (mouse/keyboard) and start again when I change the visible tab.
The CPU usage seems to come from a while(true) { /* do stuff */ Yield();
} loop in the async RPC thread (from what I saw on the debugger), but I'm not completely sure about this.
I tried compiling 6.3.18 and 6.3.19 from source, and I couldn't manage to reproduce it. It only happens with the official binaries (self-extracting archive). I'm compiling against wxWidgets 2.8.7 Unicode shared, which is probably different from the library used in the official binaries. But I asked in boinc_alpha what wxWidgets version is used for the official binaries, and didn't get a reply yet.
Attachments (1)
Change History (4)
Changed 16 years ago by
Attachment: | spin_counter.diff added |
---|
comment:1 Changed 16 years ago by
Owner: | changed from romw to charlief |
---|
Sometimes it goes through the loop a few thousand times when switching tabs. Sometimes it starts iterating and never stops, which is what causes the huge CPU usage. Moving the mouse makes the iteration stop for a while. Maybe. It may randomly start again. It's more volatile than nitroglycerin. Look at it too hard and it might start misbehaving.
comment:2 follow-up: 3 Changed 16 years ago by
Version: | 6.3.19 → 6.3.21 |
---|
Kathryn reports on boinc_alpha this has happened since 6.3.14. Still happens on 6.3.21.
comment:3 Changed 16 years ago by
Milestone: | 6.4 → 6.6 |
---|---|
Resolution: | → fixed |
Status: | new → closed |
Replying to Nicolas:
Kathryn reports on boinc_alpha this has happened since 6.3.14. Still happens on 6.3.21.
On 11/10/08 Kathryn wrote: Yeah, well. I'm getting back to looking at this. And it turns out I'm an idiot. I keep forgetting that I don't have . in my path. So when I started the manager, I thought I was starting the build after 16423. I was not. The version I was looking at was 6.3.14 that Rom released a while ago.
Fixed in version 6.3.22 and further improved in 6.5.0
Apply this patch and watch the counter spin like crazy!