johannesjo / super-productivity

Super Productivity is an advanced todo list app with integrated Timeboxing and time tracking capabilities. It also comes with integrations for Jira, Gitlab, GitHub and Open Project.
http://super-productivity.com
MIT License
11.69k stars 902 forks source link

Super Productivity v7.7.0 High CPU Usage #1678

Closed kwongtn closed 9 months ago

kwongtn commented 2 years ago

Your Environment

x64 Intel Core i7-8750H

Expected Behavior

Lower CPU Usage

Current Behavior

High CPU Usage when it is in background when tracking time (sometimes up to 25%)

Steps to Reproduce (for bugs)

Not sure, but here's the log: https://pastebin.com/siAb7h2j

Error Log (Desktop only)

Log from %USERPROFILE%\AppData\Roaming\superProductivity\logs\main.log main.log

johannesjo commented 2 years ago

Thanks for opening this up. Not sure what to do about this tbh and I a m unable to reproduce this (on my system it's between 0 and 2%). If anybody has a suggestion, please speak up :)

gcqmkm02 commented 2 years ago

Yo tengo 7%. Mi parece muy elevado. Es tenido a typescript o es un bug?

github-actions[bot] commented 2 years ago

This issue has not received any updates in 90 days. Please comment, if this still relevant!

wbkang commented 2 years ago

I am experiencing the same problem - I am on Windows 11, 21H2 22000.556 if that matters.

Constant 5-13% cpu when idle, so this corresponds to 1-2 full threads on my laptop - it heats up the laptop good. I ran the profiler and captured the output (Profile-20220325T152241.zip).

I couldn't decipher the profile too much, but it did use 457ms/10394ms which corresponds to basically 5% cpu just in JavaScript.

In the console it also runs something in the background every second:

action-logger.reducer.ts:11 [Task] Add time spent {task: {…}, date: '2022-03-25', duration: 1000, type: '[Task] Add time spent'}
action-logger.reducer.ts:11 [Tag] Update Work End for Tag {id: 'TODAY', date: '2022-03-25', newVal: 1648236383596, type: '[Tag] Update Work End for Tag'}
action-logger.reducer.ts:11 [Persistence] Save to DB {dbKey: 'task', data: {…}, type: '[Persistence] Save to DB'}
action-logger.reducer.ts:11 [Persistence] Save to DB {dbKey: 'tag', data: {…}, type: '[Persistence] Save to DB'}
action-logger.reducer.ts:11 [Task] Add time spent {task: {…}, date: '2022-03-25', duration: 1000, type: '[Task] Add time spent'}
action-logger.reducer.ts:11 [Tag] Update Work End for Tag {id: 'TODAY', date: '2022-03-25', newVal: 1648236384596, type: '[Tag] Update Work End for Tag'}
(repeat)

Which I am sure is intended, but I wonder if we need to make something less frequent? Let me know what else I can provide.

sunsoy commented 2 years ago

I can reproduce, about 10% idle and a full CPU thread. Linux snap package, XPS 15 7590 Intel i7-9750H. Great app though!

DKBurnsBresMed commented 2 years ago

Can also confirm that this happens. It seems to grind to a halt only when tracking time. Can reliably replicate it maxing out a core on my laptop when pressing the play/pause button. when paused goes down to 0%-0.1%, when tracking time shoots right up to 10% usage and slows down whole system.

Would be great to have a solve for this, as at the moment I've stopped using SP to track time spent on tasks because it's stressing out my work computer too much.

johannesjo commented 2 years ago

I made several adjustments for 7.11.5. Please let me know if the new build improves the situation.

wbkang commented 2 years ago

It does seem to have fixed it. Thank you very much. Please feel free to resolve.

low-skill-dev commented 11 months ago

Still not fixed. 7.13.2. Background. Ryzen 5 4600 Screenshot_59

MHTSM commented 10 months ago
kwongtn commented 10 months ago
  • Half of my CPU utilization goes to Super Productivity which is alot when you consider that gonna be idle until you complete the work, weirdly It also does on Linux based systems, Are they using resources to mine crypto ? Open source right ?, Analyze the program report the right issue please

Dude the source is open for you inspect, and it's really bad when people like you make baseless accusations and demands like this. No one is stopping you to look into the code and probably issue a fix 😑

MHTSM commented 9 months ago

I find Super Productivity as a tool more viable and useful to be honest, But I found the issue with the CPU more often even with Other OS with different environments, Yes u right but I'm not the one who only facing the issue here so If you can't solve the issue just leave the feedback someone will fix the issue anyway

mathisgauthey commented 9 months ago

Thanks for opening this up. Not sure what to do about this tbh and I a m unable to reproduce this (on my system it's between 0 and 2%). If anybody has a suggestion, please speak up :)

Hey @johannesjo, I have been able to reproduce the issue on Windows using the installation from Windows Store (I can't use the portable one as I rely heavily on a taskbar shortcut).

The issue appears when there's a Take a break or Time estimated exceeded notification and you click on the notification. It's exactly when my laptop starts taking off to Hawai and my CPU becomes bloated with SupProd like in this issue first screenshot.

Hope it helps, I'm sorry I don't have the time nor knowledge to help with this bug otherwise.

johannesjo commented 9 months ago

Possibly related: https://github.com/johannesjo/super-productivity/issues/2942

mathisgauthey commented 9 months ago

Possibly related: #2942

I definitely saw the same pattern. So there's two way to trigger that high CPU usage :

johannesjo commented 9 months ago

I made some changes to the startup process so that all handlers are only loaded for when it is clear the app has the single instance lock. Would be great if someone could check if that changes anything on windows.

mathisgauthey commented 9 months ago

I made some changes to the startup process so that all handlers are only loaded for when it is clear the app has the single instance lock. Would be great if someone could check if that changes anything on windows.

Sure, but my Microsoft store version is 7.15.0, should I get the update elsewhere ?

johannesjo commented 9 months ago

Sure, but my Microsoft store version is 7.15.0, should I get the update elsewhere ?

You should be able to download a new windows build here (at the bottom of the page): https://github.com/johannesjo/super-productivity/actions/runs/7356939423

mathisgauthey commented 9 months ago

Sure, but my Microsoft store version is 7.15.0, should I get the update elsewhere ?

You should be able to download a new windows build here (at the bottom of the page): https://github.com/johannesjo/super-productivity/actions/runs/7356939423

Thanks. I installed using superProductivity Setup 7.17.0.exe. I can no longer go full throttle of the CPU by clicking on the taskbar icon. I will use it a bit next week and give my review for the notification click part of the issue.

johannesjo commented 9 months ago

Thank you @mathisgauthey ! I also made a new release just now (will take a little for the windows store to provide the latest version though).

mathisgauthey commented 9 months ago

Thank you @mathisgauthey ! I also made a new release just now (will take a little for the windows store to provide the latest version though).

Small update, but I haven't had any new high CPU usage despite clicking on every notification (Break timer, time exceeded, etc) and using the minimized to tray option.

There's another issue since, but the high CPU load seems to be fixed at least on Windows 11.

Link to the new issue since last release 7.17.0 : https://github.com/johannesjo/super-productivity/issues/2964

johannesjo commented 9 months ago

I am closing this then!