Hi everyone!

My daily driver is a Surface Go 1 running Fedora with 8GB of ram and 128GB of storage. It is always hooked up to a Philips 273B screen via USB-C.

Most of the time, it is really fast and a perfect tiny Linux and Gnome machine easily hookable to a big screen for when you’re not travelling.

However, sometimes, after installing updates but maybe not always, it is slow as hell. Sometimes, detaching the Surface from the big screen and hooking it again, solves the issue, but not always. It is a behavior I already had when I was using Ubuntu and I’ve had on Fedora since version 36.

Here are some useful printscreens from HTOP and the ressource management system:

#high cpu usage

#low cpu usage

I thought that maybe installing the Surface kernel would stop the issue, but it didn’t…

Sometimes it’s annoying enough to make me just want to use my wife’s MacBook Pro 2012 running Fedora as a daily driver but the form factor is less practical.

Thanks in advance for any help!

Edit: it happens on startup, even after days of inactivity

  • utopiah@lemmy.ml
    cake
    link
    fedilink
    arrow-up
    3
    ·
    5 hours ago

    It’s all just speculations, both what you suggested and what others said.

    You are on the right path with your screenshots but you might not be measuring the right thing.

    So, you need a (paper) notebook to record objectively (not your biased feeling assuming a pattern that might not exist) when it happens and for how long. Only from then can you backtrack to WHAT causes it. Sure you can have some hypothesis (update related, screen attach/detach, BIOS, RAM, etc) but that should NOT lead to your data acquisition.

    So you htop is nice but AFAICT it’s just about CPU and memory, it’s not about e.g. IO so consider instead iotop, in particular if one process is some indexing (e.g. locatedb). Theoretically if it’s not CPU/memory (which you are saying it’s not the case) then it basically just leaves IO, that can be again indexing, some heavy process that is bottlenecked on disk access, but can also be a bug, e.g. BT pairing/unpairing that happens faster than you can notice.

    Think of this as a fun investigation that leads you to better understanding of your setup, good luck.

    • Dariusmiles2123@sh.itjust.worksOP
      link
      fedilink
      arrow-up
      2
      ·
      4 hours ago

      Yeah I guess you’re right, my last chance of solving the problem could be by creating a spreadsheet with as much data as possible on every occurrence…

      I don’t think it would be a thrilling investigation though😅

      What are IO and Iotop?

      • atzanteol@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        4 hours ago

        What are IO and Iotop?

        Input / Output.

        Reading and writing to disk, network, etc.

        iotop shows will show applications writing and reading from disk. It’s going to likely be pretty sporadic.

        What may be happening, and what others are suggesting, is that you’re running out of memory (8gig isn’t that much these days). When that happens the system starts writing memory to disk so it can free more. That’s what you see with the “swap” usage. You can see a bit more about your memory usage with free -m:

        $ free -m
                       total        used        free      shared  buff/cache   available
        Mem:           64141       17077       24020        1981       30419       47063
        Swap:          20479           0       20479
        

        Using swap space isn’t necessarily bad. But reading/writing to it frequently can be a performance killer. You can monitor that with a command called vmstat:

        $ vmstat -w 3
        --procs-- -----------------------memory---------------------- ---swap-- -----io---- -system-- ----------cpu----------
           r    b         swpd         free         buff        cache   si   so    bi    bo   in   cs  us  sy  id  wa  st  gu
           1    0            0     24590136        70748     31066604    0    0   228   309 9959   18   8   1  91   0   0   0
           0    0            0     24595172        70748     31065076    0    0     0   119 3159 6677   2   1  98   0   0   0
           2    0            0     24607436        70748     31070316    0    0  2300    75 3147 6693   2   1  97   0   0   0
           0    0            0     24594892        70748     31070316    0    0     0   584 3417 5950   1   1  98   0   0   0
        

        The columns to pay attention to there are under the ---swap-- header. si is “Swap In” and so is "Swap Out. Those are reads/writes to and from swap space. Seeing a little activity there is fine. It is typically pretty spikey. But if you’re seeing lots of numbers there then it could just indicate that you’re running low on memory and the OS needs to move things to and from disk frequently. While it’s moving things to and from the disk the application trying to use that memory has to wait.