• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
MagicMirror Forum
  • Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

Electron CPU usage

Scheduled Pinned Locked Moved Troubleshooting
247 Posts 46 Posters 477.2k Views 42 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D Offline
    Doum @mattn
    last edited by Apr 17, 2018, 5:20 PM

    @mattn I am pretty new to linux/raspbian… I do not have any file/folder under /etc with the name environment?

    Should i create a file and add this line in? add it somewhere else?

    Thanks

    M 1 Reply Last reply Apr 21, 2018, 9:01 PM Reply Quote 0
    • N Offline
      nparab
      last edited by Apr 17, 2018, 6:49 PM

      Thanks v.much to everyone on this forum. I just downgraded Electron to 1.4.15, without downgrading either MagicMirror2 or my OS, and my CPU usage and temperature are significantly down. But I’m facing yet another problem because of this downgrading of Electron. My MMM-PIR-Sensor module is giving this error:

      App threw an error during load
      Error: Module version mismatch. Expected 50, got 54.
          at Error (native)
          at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:173:20)
          at Object.Module._extensions..node (module.js:583:18)
          at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:173:20)
          at Module.load (module.js:473:32)
          at tryModuleLoad (module.js:432:12)
          at Function.Module._load (module.js:424:3)
          at Module.require (module.js:483:17)
          at require (internal/module.js:20:19)
          at bindings (/home/pi/MagicMirror/modules/MMM-PIR-Sensor/node_modules/bindings/bindings.js:81:44)
      Whoops! There was an uncaught exception...
      Error: Module version mismatch. Expected 50, got 54.
          at Error (native)
          at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:173:20)
          at Object.Module._extensions..node (module.js:583:18)
          at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:173:20)
          at Module.load (module.js:473:32)
          at tryModuleLoad (module.js:432:12)
          at Function.Module._load (module.js:424:3)
          at Module.require (module.js:483:17)
          at require (internal/module.js:20:19)
          at bindings (/home/pi/MagicMirror/modules/MMM-PIR-Sensor/node_modules/bindings/bindings.js:81:44)
      

      Any help on fixing this would be appreciated.

      1 Reply Last reply Reply Quote 0
      • N Offline
        nparab
        last edited by nparab Apr 17, 2018, 7:52 PM Apr 17, 2018, 7:51 PM

        Fixed it! I just went to the modules/MMM-PIR-Sensor directory and did

        npm install
        

        That fixed it.

        1 Reply Last reply Reply Quote 1
        • M Offline
          mattn @Doum
          last edited by Apr 21, 2018, 9:01 PM

          @Doum Yeah, just create the file, paste that line, save and reboot.

          1 Reply Last reply Reply Quote 1
          • M Offline
            martinkooij @mattn
            last edited by martinkooij Apr 23, 2018, 6:21 PM Apr 23, 2018, 6:10 PM

            @mattn What version of electron are you running? I downgraded to 1.4.15 electron, have v6.12.3 nodejs and 2.3.1Magic Mirror. I set the environment variable as you indicated. CPU usage goes down remarkably, although not as much as in your case.

            Did you also got rid of a memory leak? I start with 43% free and this falls to 7% after a day. Stays between 5%-7% for a few days and then after 3-5 days my mirror halts completely with E_NOMEM panic in the log files. Any reader knows of handy memory leak analysistools for nodejs? It seems you keep on having 50% used / 50% free… Not me ;(.

            top - 20:03:02 up 21:14,  3 users,  load average: 0,30, 0,33, 0,41
            Tasks: 165 total,   2 running, 163 sleeping,   0 stopped,   0 zombie
            %Cpu(s):  8,6 us,  4,5 sy,  0,0 ni, 86,9 id,  0,0 wa,  0,0 hi,  0,0 si,  0,0 st
            KiB Mem:    949580 total,   907688 used,    41892 free,    60200 buffers
            KiB Swap:   102396 total,     5172 used,    97224 free.   444532 cached Mem
            
              PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
             1178 pi        20   0  828888 244624  65840 R  22,5 25,8 327:41.98 electron
             1216 pi        20   0  603272 349144 290184 S  13,6 36,8 132:11.73 electron
              666 root      20   0  200848  58756  28796 S  12,2  6,2 131:39.07 Xorg
            24453 pi        20   0    5224   2580   2148 R   1,0  0,3   0:02.03 top
            
            M 1 Reply Last reply Apr 23, 2018, 6:33 PM Reply Quote 0
            • M Offline
              mattn @martinkooij
              last edited by Apr 23, 2018, 6:33 PM

              @martinkooij TBH, I have no clue how to check my electron version, but I used the MM install script and haven’t downgraded anything. So I’m running the version supplied by the script as of approximately two weeks ago.

              I’ve not noticed any mem issues. My mirror’s been up 6 days mem usage is ~10% per process:

              top - 19:19:50 up 6 days,  8:37,  3 users,  load average: 0.13, 0.24, 0.20
              Tasks: 155 total,   1 running, 153 sleeping,   0 stopped,   1 zombie
              %Cpu(s): 32.7 us,  4.8 sy,  0.0 ni, 62.5 id,  0.1 wa,  0.0 hi,  0.0 si,  0.0 st
              KiB Mem:    947732 total,   674684 used,   273048 free,    96984 buffers
              KiB Swap:   102396 total,        0 used,   102396 free.   288436 cached Mem
              
                PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
               1099 pi        20   0  310396  98548  55500 S 104.4 10.4 765:21.28 electron
               1111 pi        20   0  366396 102884  51368 S  21.5 10.9 297:36.05 electron
               1071 pi        20   0  474832  84892  58020 S  12.3  9.0 244:20.94 electron
              

              Could it be a module causing it? Or try reinstalling MM with the script and see what happens with the default install/modules

              As far as my modules go, I’m only using the date and weather mods from standard and then 4 custom mods(technically 2, as 3 are separate instances of the same mod for bus/train times).

              Regards,

              Matt

              M 1 Reply Last reply Apr 23, 2018, 6:47 PM Reply Quote 1
              • M Offline
                martinkooij @mattn
                last edited by martinkooij Apr 23, 2018, 6:48 PM Apr 23, 2018, 6:47 PM

                @mattn thanks! I love my modules, so difficult to lose one ;).

                It however seems you have a slow leak too, growing memory usage of ca 200Mbyte in 6 days. Much less than me, but still more than it should be, I guess. Just let us know how you fare! Thanks for sharing.

                1 Reply Last reply Reply Quote 0
                • M Offline
                  martinkooij
                  last edited by martinkooij May 5, 2018, 11:10 AM May 5, 2018, 11:04 AM

                  @mattn and others.
                  I have a stable situation with the following:

                  • electron 1.4.15 (withELECTRON_FORCE_WINDOW_MENU_BAR=1).
                    higher elektron version gives black screen, the environment variable lowers the cpu-usage by elektron considerably).
                  • Magic Mirror 2.3.1 (actually I was quick to install MM2.3.0 but manually downgraded electron, but I am quite sure that amounts to the same as installing MM 2.3.1).
                  • nodejs version v9.11.1. (I used to have a 1.6.x nodejs, but that one caused memory leaks. )

                  Is now running in this configuration almost 7 days without interrupt. And no signs of stopping soon. Thanks you all in this forum for the help.

                  (Rasberry pi 3, Jessie, CPU Hardware: BCM2835, Revision: a02082)

                  1 Reply Last reply Reply Quote 1
                  • C Offline
                    cdelaorden
                    last edited by May 10, 2018, 2:54 PM

                    Hi guys

                    Im new to the forum and this project but I have some small experience with the Pis and having the same issue

                    I think that its related to the video driver, using ‘sudo raspi-config’ and changing the video driver to one of the GL drivers resulted in a much lower cpu load in my case.

                    Doesn’t matter if you choose full KMS or fake KMS as long as you dont use the legacy non-GL driver.

                    It took my 4 CPU from full 100% to idle bellow 35%

                    Im sure someone else with this problem can confirm this

                    E M 2 Replies Last reply May 10, 2018, 9:09 PM Reply Quote 1
                    • E Offline
                      E3V3A @cdelaorden
                      last edited by May 10, 2018, 9:09 PM

                      @cdelaorden

                      • How can we check the video driver without using rapsi-conf?
                        in dmesg? in systemd journal?
                      • How/where do you set the: ELECTRON_FORCE_WINDOW_MENU_BAR=1.
                      • What would be the easiest way for users to check electron version from command line?

                      "Everything I do (here) is for free – altruism is the way!"
                      MMM-FlightsAbove, MMM-Tabulator, MMM-Assistant (co-maintainer)

                      C 1 Reply Last reply May 11, 2018, 1:17 PM Reply Quote 0
                      • 1
                      • 2
                      • 21
                      • 22
                      • 23
                      • 24
                      • 25
                      • 23 / 25
                      • First post
                        Last post
                      Enjoying MagicMirror? Please consider a donation!
                      MagicMirror created by Michael Teeuw.
                      Forum managed by Sam, technical setup by Karsten.
                      This forum is using NodeBB as its core | Contributors
                      Contact | Privacy Policy