hyper icon indicating copy to clipboard operation
hyper copied to clipboard

Performance + Animation Lags on 3.1.0 (stable)

Open jrodl3r opened this issue 3 years ago • 23 comments

  • [x] I am on the latest Hyper.app version
  • [x] I have searched the issues of this repo and believe that this is not a duplicate
  • OS version and name: MacOS Big Sur 11.3.1 (20E241)
  • Hyper.app version: 3.1.0 stable
  • Link of a Gist with the contents of your .hyper.js: http://pastie.org/p/2BlzawsQ9LF9hg7WzMWSrW
  • The issue is reproducible in vanilla Hyper.app: technically, no. but come on... this was not an issue until i was forced to upgrade.

Issue

forced upgrade causes performance lag when using plugins.

jrodl3r avatar Jul 16 '21 20:07 jrodl3r

A simple cd Documents take so long... I uninstalled and installed version 3.0.2 and it is normal, but then it updates to the 3.1.0 automatically again and the performance lag continues.

joaovbrandon avatar Jul 16 '21 20:07 joaovbrandon

I'm having the same issue (same OS, same version) - I auto-upgraded to 3.1.0 today, and since the upgrade the app has been unusable. The app works fine for 5-10 minutes, and afterward, it is so laggy it's unusable. I type any command into the console - and before executing it takes up 20-30 seconds to display what i had typed. running a normal command (which returns instantly when run in Terminal) can take anywhere up to 2-3 minutes to run.

joshsylvester avatar Jul 17 '21 01:07 joshsylvester

Can you try removing all plugins and adding them back one by one, to see if it's due to any particular one. hyper-statusline was causing some issues for me earlier.

LabhanshAgrawal avatar Jul 17 '21 06:07 LabhanshAgrawal

hyperline is the culprit here (at least from the list of my plugins).

stephanschubert avatar Jul 17 '21 08:07 stephanschubert

I'm noticing that after the upgrade, Hyper Helper (renderer) process has very high CPU usage. This seems to be related to my performance issues. After removing hyperline, everything normalized.

txjack avatar Jul 17 '21 16:07 txjack

+1, removing hyperline removes the laggy input for me on 3.1.0 running on macOS Big Sur.

industriousparadigm avatar Jul 18 '21 17:07 industriousparadigm

+1 very slow after the upgrade. Downgrade to 3.0.2 resolves the issues

radmedov avatar Jul 18 '21 23:07 radmedov

+1 Removing the hyper-statusline plugin resolved the issue for me. Ticketed here: https://github.com/henrikdahl/hyper-statusline/issues/96

mitchwd avatar Jul 19 '21 00:07 mitchwd

@jrodl3r can you post your config again, that link is not working.

LabhanshAgrawal avatar Jul 19 '21 06:07 LabhanshAgrawal

Both hyperline and hyper-statusline are causing issues at the moment, both of these are using setInterval with small values for either getting time, system resources, etc. and spawning child processes very frequently.

LabhanshAgrawal avatar Jul 19 '21 08:07 LabhanshAgrawal

can confirm after the update hyper-statusline was causing lag, removing it fixes the issue even on hyper 3.1.1 hopefully they fix the issue soon

RenanSgorlom avatar Jul 19 '21 15:07 RenanSgorlom

Both hyperline and hyper-statusline are causing issues at the moment, both of these are using setInterval with small values for either getting time, system resources, etc. and spawning child processes very frequently.

This along with an issue in electron https://github.com/electron/electron/issues/26143 is giving us the lag.

LabhanshAgrawal avatar Jul 19 '21 18:07 LabhanshAgrawal

Can you all try out the build from https://github.com/vercel/hyper/actions/runs/1049653907 to see if there's any improvement in perf.

LabhanshAgrawal avatar Jul 20 '21 17:07 LabhanshAgrawal

Can you all try out the build from https://github.com/vercel/hyper/actions/runs/1049653907 to see if there's any improvement in perf.

Using Hyper-3.1.0-canary.6-mac-x64.dmg on MacOS Big Sur, this did indeed seem to fix the problem. No lag running the canary version with hyperline enabled 👍 (Edit: So I'm guessing it's pretty much entirely due to https://github.com/electron/electron/issues/26143 and not hyperline's fault, which is good since that repo hasn't seen an update in years 😆 )

bfaulk96 avatar Jul 20 '21 18:07 bfaulk96

Yep, here the Hyper 3.1.0-canary.6 is ok as well MacOS Big Sur 11.4 👍🏻

joaovbrandon avatar Jul 20 '21 18:07 joaovbrandon

There'd need to be some updates in the plugins though. Doing exec or spawn from renderer is discouraged, it should be done from the main process ideally. Doing it from the renderer is slowly being phased out. The electron issue mentioned that there was some difference between signed vs unsigned builds. The one I'd mentioned earlier is unsigned. Can you try the build from https://github.com/vercel/hyper/actions/runs/1051187521#artifacts too? It's signed and so will help confirm the fix for now.

LabhanshAgrawal avatar Jul 21 '21 04:07 LabhanshAgrawal

@LabhanshAgrawal this last build that you sent (https://github.com/vercel/hyper/actions/runs/1051187521#artifacts) still with the lag when hyper-statusline plugin is enabled 😞

joaovbrandon avatar Jul 21 '21 12:07 joaovbrandon

I'm not sure if something changed from the other build (https://github.com/vercel/hyper/actions/runs/1049653907), but I tested again and this one is fixed...

joaovbrandon avatar Jul 21 '21 12:07 joaovbrandon

@joaaoeu the difference is that one is signed and other isn't. IIRC it's something due to changes in Big Sur. Many electron apps are using codesign --remove .... to remove the signature and fix the performance hit, after users install it. We might also need to do something similar.

LabhanshAgrawal avatar Jul 21 '21 13:07 LabhanshAgrawal

since downgrading electron might not be feasible as the bug is still there in signed builds, we can instead use IPC to do exec etc. in main process. Test out the build from #5803 https://github.com/vercel/hyper/actions/runs/1077170228#artifacts it should be good enough i guess until the issue is fixed in electron.

LabhanshAgrawal avatar Jul 29 '21 03:07 LabhanshAgrawal

With this build it still with a small lag if the hyper-statusline plugin is enabled, but less than the current version.

joaovbrandon avatar Aug 02 '21 19:08 joaovbrandon

I'm seeing the same behavior using that @joaaoeu mentioned when using the hyperline plugin. Less lag, but still quite laggy.

bfaulk96 avatar Aug 16 '21 18:08 bfaulk96

Not seeing with 3.3.0. OK to close IMO.

JJJ avatar Nov 23 '22 18:11 JJJ