Fractal Softworks Forum

Please login or register.

Login with username, password and session length
Pages: [1] 2

Author Topic: Low FPS with high-end hardware  (Read 7653 times)

Tears

  • Ensign
  • *
  • Posts: 5
    • View Profile
Low FPS with high-end hardware
« on: January 01, 2022, 01:21:05 PM »

Hello!

I'll preface this by saying I posted in the support and not modded forum as I don't think this problem is mod related. Feel free to move the thread if appropriate.

Recently I had the itch again to play some Starsector so I loaded up all the up-to-date mods and launched it. Since last time I have updated my GPU to a 6900XT from my previous 1070. I decided to run the FPS test that comes with one of the mods and to my surprise I am getting far worse FPS ( ~25 average on 400 battle size ) due to the GPU seemingly not being utilized at all. Basically my Hardware Monitor and also AMD's own control software show that my GPU is locked at 500MHz. If I launch something more demanding it easily goes past 2300MHz as needed. The power draw and thermals ( ~45C with fans off ( This is an intentional setting. They do come on when I go above 50C.)) don't change at all suggesting the GPU is not utilized nearly at all. Then again in Task Managers performance tab I can see Starsector is using it. So maybe the demands on the GPU are that low?

I've been trying to troubleshoot it for the past few hours and in the end I gotta bite the bullet and ask if someone has any other ideas.

Here is what I've tried thus far:

* Restart PC - duh
* Forced both Starsector.exe and Java.exe into high power mode under Windows 10 settings.
* Turn off all mods except GraphicsLibs and the 3 other Libs. No difference.
* Turned off GraphicsLib in its settings file and run the FPS test again. No difference.
* Turn off all mods, which sadly killed the ability to use that particular FPS test. But loading up a big default battle I can still feel how it doesn't run smoothly.
* Edited the settings.json in config folder to turn off vsync and set FPS to 100 which is monitors refresh rate.
* Added both Starsector.exe as well as the Java.exe into AMDs Software and forced a minimum core clock of 1500MHz on both. This caused the clocks to be hit sometimes and then at other times drop to as low at 100MHz. But FPS was still unchanged.
* Checked that my graphics drives and GPU Bios are up-to-date.

Rest of my hardware shouldn't be an issue either but posting it just in case:

AMD Ryzen 7 2700X
32GB of DDR4 at 3200 MHz
Gigabyte X470 Aorus Gaming 7 Wifi motherboard
Samsung 850 EVO 500GB SSD

I'm also running the game in ultrawide 3440x1440 on MSI MAG341CQ.

In my searching it seems like some people have this sorta problem with other games also. Although it happened with both Nvidia and AMD GPUs so it's unclear if it's even the same problem honestly. Just low GPU Clock that is locked.. But at the same time no one can seem to pin down what actually causes it.
All of the more demanding games I have on Steam run just fine. And even games that make no demands of the GPU like Drox Operative 2 - which reminded me to play Starsector again - run at a rock solid 100 FPS despite also having the GPU at very low clocks.

So I'm now lost as to what else I can possibly do.. Halp? =(
« Last Edit: January 01, 2022, 01:22:55 PM by Tears »
Logged

Alex

  • Administrator
  • Admiral
  • *****
  • Posts: 24126
    • View Profile
Re: Low FPS with high-end hardware
« Reply #1 on: January 01, 2022, 03:45:55 PM »

Hi - I'm sorry about all the trouble! I think the issue is that AMD graphics driver support for OpenGL - especially older versions of OpenGL - is... not great. This hasn't been 100% confirmed and it's possible that there *might* be some way to work around it via some setting (you've already tried turning off vsync in-game; IIRC someone mentioned that this helped them on an AMD card - it might be worth making sure that vsync is not forced on in the graphics drivers, overriding the in-game setting), but I don't know of any definitive fix.

Another thing that might be worth trying is a much older version of the drivers. The 6900XT is a comparatively new card, though, so I'm not sure how much luck you'd have with that.
Logged

Tears

  • Ensign
  • *
  • Posts: 5
    • View Profile
Re: Low FPS with high-end hardware
« Reply #2 on: January 02, 2022, 02:14:34 AM »

Thanks for the quick response Alex!

I forced VSync off in AMD Software but sadly it didn't do anything either. And using older drivers is not an option as the older versions were rather unstable for the 6900XT. :(

It looks like it really is a case of AMD just being shitters and not supporting OpenGL on Windows properly due to Vulkan being a thing. At least that's what I'm seeing when following this line of inquiry.

I have a few more nuclear options to try like installing some Linux distro in dual-boot. From my extended searching in this direction it looks like OpenGL is better supported by AMD on Linux. I tried running Ubuntu in VirtualBox but then quickly found out that VirtualBox cannot actually use my graphics card and instead emulates it using CPU. So that shut down that particular plan. There seemed to be some hacks to get past this but not worth the effort in my view.

On the topic of Vulkan, is there ever any plan to port Starsector from OpenGL to Vulkan in the future? I also read there is something called Zink that is being developed aims to translate OpenGL calls to Vulkan which I assume might help us suckers who bought AMD. Although it seems like it's still in development so not sure how well that'll work.

But to not end on a negative note I'll take this chance to say that Starsector is one of the most amazing games I've ever played in terms of just great design. Can't wait to see what sorta amazing endgame you've got planned for it! Plus the modding community around the game is also simply amazing. And if nothing else works and the itch to play again becomes great enough I should have enough parts to cobble together a 2nd PC to stick my old 1070 into so I can still play it. Where there is a will there is a way as they say.  ;D
Logged

Alex

  • Administrator
  • Admiral
  • *****
  • Posts: 24126
    • View Profile
Re: Low FPS with high-end hardware
« Reply #3 on: January 02, 2022, 10:33:54 AM »

Yeah, I remember seeing people having better performance with Linux drivers.

I've looked into Zink - only a bit, so I'm not 100% clear on the specifics - but I got the impression it's basically a driver that the end user would need to install on their system. Could be wrong about this, though; I couldn't find anything super clear that's just a "here's what this actually is".

For converting to to Vulkan directly, it's not something I'd want to attempt unless there's no other choice. From what I understand, it's a fairly different API compared to low-version OpenGL, so it'd involve rearchitecting a lot of things and would overall just be a massive undertaking. And there are some nice advantages to using old OpenGL, in particular how easy this makes it to let mods to custom rendering at pretty much any point in the process. I'm not sure how much of that it would be possible to preserve.

But to not end on a negative note I'll take this chance to say that Starsector is one of the most amazing games I've ever played in terms of just great design. Can't wait to see what sorta amazing endgame you've got planned for it! Plus the modding community around the game is also simply amazing.

Thank you! <3 And yeah, the modding community is absolutely amazing.

And if nothing else works and the itch to play again becomes great enough I should have enough parts to cobble together a 2nd PC to stick my old 1070 into so I can still play it. Where there is a will there is a way as they say.  ;D

Wow, desperate times/desperate measures :)

One more thought: do you have, say, an intel graphics card integrated into the motherboard? If you do, then forcing the game to run on that might give you better performance than the AMD card.
Logged

Tears

  • Ensign
  • *
  • Posts: 5
    • View Profile
Re: Low FPS with high-end hardware
« Reply #4 on: January 02, 2022, 01:53:13 PM »

One more thought: do you have, say, an intel graphics card integrated into the motherboard? If you do, then forcing the game to run on that might give you better performance than the AMD card.
Sadly a no-go on that front. AMDs Ryzen 7 2700X far as I know it has no integrated graphics or APU at all. And even if it did then my motherboard has no video out option anyway. But many thanks for thinking of all reasonable options out there! :) Sadly it seems at least in my case I need to choose 1 of a multitude of less reasonable options. Leaning towards dual boot right now. And when I finally get around to it I'll come and update the post if that helped solve the performance issues.
Logged

Alex

  • Administrator
  • Admiral
  • *****
  • Posts: 24126
    • View Profile
Re: Low FPS with high-end hardware
« Reply #5 on: January 02, 2022, 02:24:46 PM »

Thank you for your understanding! I hope you make it work, looking forward to hearing back when/if you get around to it :)
Logged

catraxx

  • Ensign
  • *
  • Posts: 12
    • View Profile
Re: Low FPS with high-end hardware
« Reply #6 on: May 29, 2022, 01:12:12 PM »

Thank you for your understanding! I hope you make it work, looking forward to hearing back when/if you get around to it :)

Sorry for necromancing this, but seeing how i have been trying to make this game run on Linux and various AMD cards i can 100% confirm the operating system is not the issue, it runs just as badly in Linux as it does in Windows.

I had a Fury X before and now have a 6900xt too. The framerates are exactly the same, despite the 6900 being a vastly more powerful card. It's also basically not being used.

Though what i can tell you is that turning off the fuzzy screen transitions makes the game a lot more playable.

I tried a billion and one thing to fiddle and try to somehow fix this issue, but something that either Star Sector or OpenGL does is simply not working on AMD cards.

I can also confidently say that running the game in Java 8 instead of the bundled version provides a solid FPS boost overall.

As much as i honestly love Starsector, i am not buying an Nvidia gpu just for it and the 6900 is amazing for literally every other game. So i am at a loss here. I really would love to play Starsector the way it is intended some day ... been playing it for so long.
Logged

Tears

  • Ensign
  • *
  • Posts: 5
    • View Profile
Re: Low FPS with high-end hardware
« Reply #7 on: July 28, 2022, 02:11:19 AM »

So an update from my end. It looks like AMD has finally made some improvements to their latest drivers ( 22.7.1 ) and it has boosted Starsector performance significantly. However it is still patchy in terms of actual GPU utilization. But at least it runs a lot better and this proves that the issue I have is driver related with AMD just being shitters about OpenGL.

Another thing I have noticed when running the FPS test is that after loading up the game first time and then running it, the FPS is horrible. Once you quit out of the test and run it again ( can basically quit the test instantly ) the FPS is improved by 2 or 3x. If you just leave it running when starting the first time it never actually seems to improve - but a simple reload boosts the FPS. But if afterwards you shut down Starsector and then launch it again, same thing occurs with low performance on first load. It's like some assets or something gets loaded and then the GPU knows to use them next time a scene is loaded? Don't know. Just thought it might be a useful tidbit of info if you ever try looking into this again Alex.

One other thing I did in the AMD provided software is make a custom profile for Starsector ( as it doesn't recognize it as a game by default at all, and it's not the Starsector exe, but the java.exe in jre/bin folder ) and then turned on Radeon Chill and set desired min and max FPS to 300. It looks like it forces higher clocks more often but I can't be sure if it's this or just the updated drivers.

Also I have searched around and found mentions of a utility called MorePowerTool which supposedly overwrites the GPUs BIOS and forces higher clocks. Granted I haven't tried it myself yet - but in case someone is brave enough they can try it and post results.

So overall some improvements - I'll see if I can now play endgame properly or not. =)

Edit: Actually a question - what kinda FPS do people get with new Nvidia cards? Is it locked at maximum ( 60, 100, 144hz etc.. ) or still drops down during big fights?
« Last Edit: July 28, 2022, 02:13:38 AM by Tears »
Logged

Schwartz

  • Admiral
  • *****
  • Posts: 1453
    • View Profile
Re: Low FPS with high-end hardware
« Reply #8 on: July 28, 2022, 05:50:54 AM »

AMD boasts FPS gains in Minecraft for 22.7.1, and Minecraft uses LWJGL like Starsector does. Yes, everyone who uses a modern AMD card should update their driver.
Logged

Alex

  • Administrator
  • Admiral
  • *****
  • Posts: 24126
    • View Profile
Re: Low FPS with high-end hardware
« Reply #9 on: July 28, 2022, 07:32:28 AM »

Another thing I have noticed when running the FPS test is that after loading up the game first time and then running it, the FPS is horrible. Once you quit out of the test and run it again ( can basically quit the test instantly ) the FPS is improved by 2 or 3x. If you just leave it running when starting the first time it never actually seems to improve - but a simple reload boosts the FPS. But if afterwards you shut down Starsector and then launch it again, same thing occurs with low performance on first load. It's like some assets or something gets loaded and then the GPU knows to use them next time a scene is loaded? Don't know. Just thought it might be a useful tidbit of info if you ever try looking into this again Alex.

Hmm, interesting! The game doesn't do anything like that, at least not intentionally. This almost sounds like some sort of thing on the GPU side where the first time around, it decides that the game doesn't need much performance, but changes its mind the second time around for some reason. I'm vaguely aware there's stuff like that - the OS or the driver or whatever decide whether a program "needs" the full capabilities of the card - but I don't know what the driving factors for this are.

Regardless, it's *really* great to hear that there's a significant performance improvement!
Logged

Tears

  • Ensign
  • *
  • Posts: 5
    • View Profile
Re: Low FPS with high-end hardware
« Reply #10 on: July 28, 2022, 12:59:38 PM »

If the GPU or the driver is the one that decides how much power to allocate then it must do it based on something - at least I assume that's the case. Some sorta universal flag the program can throw or something? Because the AMD software doesn't even initially recognize Starsector as a game, despite all random Steam games being recognized as well as quite a few off Steam. The reason I'm even going down this line of thought is that another game I sometimes play - Car Mechanic Simulator 2021 - has the opposite case that unless you limit its FPS it just makes the GPU go full tilt and spit out 500 FPS. I realize that it runs on Unity and that is very different. But it somehow manages to force the GPU to go mental to pump out all the frames it can so maybe something similar can be forced with Starsector also.

Just trying to figure out if there is something more that can possibly be done. Sorry - I work as an analyst and love problem solving. x)

Also played all evening and I can report that the performance is generally acceptable now. FPS doesn't drop into single digits anymore although big battles still drop it to ~20 so not optimal either. If nothing can be done then it's still possible to endure because the game is simply so good. But maybe some random idea sparks some line of investigation that might improve things that's why I'm throwing all this out there. =)
Logged

Kossilar

  • Ensign
  • *
  • Posts: 10
    • View Profile
Re: Low FPS with high-end hardware
« Reply #11 on: October 03, 2022, 03:16:44 PM »

I'm not convinced this is an AMD issue. I have an NVIDIA 3060 and I rarely get above 20 FPS in hyperspace.
Logged

Alex

  • Administrator
  • Admiral
  • *****
  • Posts: 24126
    • View Profile
Re: Low FPS with high-end hardware
« Reply #12 on: October 03, 2022, 04:02:20 PM »

Hmm - is this vanilla, or with mods? Also, are you sure the game is actually running on that card? You might want to try forcing it to, both for starsector.exe and jre/bin/java.exe in the game folder. Otherwise, the game might be running on a weaker card integrated into your motherboard.
Logged

Schwartz

  • Admiral
  • *****
  • Posts: 1453
    • View Profile
Re: Low FPS with high-end hardware
« Reply #13 on: November 02, 2022, 06:37:27 AM »

I can report that in "The Last Hurrah" with 22.10.1 "Amernime Zone" modded drivers for my legacy AMD card (so I could get the OpenGL fixes), the FPS rarely dip below 55 and it seems to be CPU-bound in this case. I didn't fully log everything but can do so if there's interest.

This is with windowed fullscreen, vsync off, 60 FPS maximum set so it does vsync through Windows DWM, which is my preferred method since for this game it gives me the best combination of close-to-full FPS with no tearing, instead of locking it at 30 sometimes. This is with GraphicsLib on, but all features disabled.

NVidia is not immune to OpenGL regressions, so try different drivers. But you mentioning hyperspace in particular is odd. How are large battles faring?
Logged

koprus

  • Ensign
  • *
  • Posts: 43
  • Just noob mercy
    • View Profile
Re: Low FPS with high-end hardware
« Reply #14 on: November 04, 2022, 03:58:21 AM »

so a 3060 does 20 fps in hyperspace and 1000euro 6900xt's cant hit 20 fps, only bet is to have an old nvidia card? i'm still running the game on a gtx960 which runs "ok" with a healthy amount of stuttering. Thing is the gtx960 is about to be retired for a new amd system in the next months, question is, is the game about to be retired from my new pc too? About to switch to win11 and no plans to install and learn linux. Any one else has any more feedback on newer systems?
Logged
Pages: [1] 2