TL;DR: PROTON_LOG=1 drastically improves performance in Warframe.

I’ve been dealing with persistent stuttering and general slowdown in Warframe, particularly when assets were loading in upon startup and especially during loading screens. Generally, once I would get into actual gameplay things would be smooth (according to both myself and Mangohud,) but going from a hub to an open world area would completely tank performance or even outright halt rendering for 30 to 40 seconds in the worst-case scenario.

I decided to start poking into what was happening and immediately found out that PROTON_LOG=1 completely solves all of these problems. The longest loading time (30 seconds or so) is now 5 seconds. Missions load almost instantaneously.

The generated log is extremely verbose at around 1MB a minute. I don’t see anything obviously wrong, but then again the game is working as it should.

Why is this? Wouldn’t not generating the log be faster?

    • 0x0@social.rocketsfall.netOP
      link
      fedilink
      arrow-up
      7
      ·
      7 months ago

      Right? I laughed when I found out it worked, then had a moment of like, “hh, shit” when I realized the log wouldn’t actually help me solve the problem at all.

  • Ananace@lemmy.ananace.dev
    link
    fedilink
    arrow-up
    16
    ·
    edit-2
    7 months ago

    It could be that running the game at full speed causes some lock contention that doesn’t happen when slowed down by the log stream.
    Or it could also be that under normal gameplay your system spins down the harddrive to save power due to a lack of accesses, which would cause slowdowns and choppiness when the game suddenly needs to load something - also something which would be helped by running the log in the background.

    For testing the second point, I’d suggest running something like this in the background while playing; (i.e. generating some constant load)

    while true; do
      uptime > $HOME/workaround-test
      sleep 1
    done
    
    • 0x0@social.rocketsfall.netOP
      link
      fedilink
      arrow-up
      4
      ·
      7 months ago

      Good ideas. I’m curious about the game running too fast since other people mentioned it. Warframe has an in-engine FPS cap that can be set (which I have set to my display’s frame rate,) but perhaps I should try vsync or some other method in case it’s something screwy on that end.

      Disk is fine (it’s an SSD so any start/stops would be instantaneous AFAIK.)

      • LiveLM@lemmy.zip
        link
        fedilink
        English
        arrow-up
        3
        ·
        edit-2
        7 months ago

        If you feel like testing an external FPS limiter, Mangohud has one built-in

  • Mactan [he/him]@lemmy.ml
    link
    fedilink
    arrow-up
    3
    ·
    7 months ago

    I toggle off my compositor and it makes Warframe much smoother (kde has a default keybinding for it I think)

  • Willem@kutsuya.dev
    link
    fedilink
    arrow-up
    2
    ·
    7 months ago

    sounds to me like a timing issue. By using the proton log you might slow down to the point the timing issue doesn’t give you problems anymore. Try disabling vsync and enabling a fps limit (warframe has both settings itself).

    Another possible cause could be filesystem going to a powersaving mode during normal gameplay and by writing logs you keep the disk in high performance.