Poor FPS at duplicant selection screen


Puh
  • Branch: Live Branch Version: Linux Pending

My specs are:

 

VivoBook S15 S530FA

Intel i5-8265U

Intel UHD Graphics 620

 

Starting at duplicant selection screen, the FPS drops around 24 and puts the GPU in full load. This persists throughout the game and improves at lower resolutions.

 

I am well aware it's a low power integrated GPU, but it runs all other Klei games and 2D unity games at 1080p 60fsp. I see no justifiable reason for ONI to behave so poorly during a mostly static screen.

 

The attached log complains about missing VR extension. I presume it is harmless?

 

I'm reporting from Linux, but I got the exact result under Windows 10.

 

Thanks!

2019-12-15-155834_1920x1080_scrot.png


Steps to Reproduce
Have integrated GPU, start the game, observe poor FPS.


User Feedback


Sorry to tell you, but its your CPU. 

Its a low power CPU, with 1.6GHz stock speed. And thats what you get, nothing more.

Ignore the 3.9GHz Boost. Its useless for games. The Boost only applies if cooling is sufficient, and only for a few seconds. Thats it. 

ONI is VERY demanding on CPU power. You can bring down an i9 with 8 cores at 5GHz with this game. 

And your CPU is a poor little mobile model, designed to give a small boost, for program startup for example, and nothing more. Its no workhorese. You cant expect to run ONI smooth on a 15W low power CPU like yours. I´m sorry, but thats how it works.

Share this comment


Link to comment
Share on other sites

I know ONI simulation is very heavy on the CPU. Here it's not the case. I don't believe it's even running at this point in the game, or it's at a bare minimum.

 

The CPU is 80% idle but the GPU queue is full. At 720p I gain 15 fps. This is suspicious considering there's nothing happening on the screen. Unless the game is rendered behind the duplicant selection screen, in which case I guess the GPU isn't good enough. Still strange, considering the game has a reputation for running on low end GPUs and being entirely CPU bound.

 

I know the laptop is a toy and I don't attempt to play ONI seriously on it. It should still be good enough to run the early cycles and try some sandbox builds.

Share this comment


Link to comment
Share on other sites

As far as i can tell, the dupe-selection screen is already actual game-graphics. So its fully rendered, not far from the load the actual game will produce when started. The iGPU itself should be powerful enough on ~GTX910m from Nvidia. Not much power but enough. The downside is clearly the slow RAM for this iGPU. Speaking of Video-RAM, how much does this laptop have in general, and how much is dedicated to the IGPU? Can it be changed in the BIOS? If so, maybe the amount is set way to low, for example 256MB. That could cause massive performance issues. 

Another thing is, its a 10-25W TDP CPU (depends on the manufacturer of your laptop). If it reaches this target, it throttles, and the iGPU along the way too. You may download a tool to monitor the temp and power targets of the CPU while starting/playing the game. If it reaches max temp or max TDP quickly, thats your problem.

Share this comment


Link to comment
Share on other sites

Video RAM is allocated dynamically on this model from the system memory (8GB @ 2400MHz). My driver sees 3072MB. Unity reports only 512MB under Linux, but it's only a read value. The Windows version reports 2138MB and runs exactly the same.

 

Temperature averages around 42 C, no idea what the thresholds are but it seems low to me. GPU runs at its max clock speed (1.1GHz).

 

 $ intel_gpu_top -l
 Freq MHz      IRQ RC6 Power     IMC MiB/s           RCS/0           BCS/0           VCS/0          VECS/0
 req  act       /s   %     W     rd     wr       %  se  wa       %  se  wa       %  se  wa       %  se  wa
<--- Idle
 300  300      124   0  0.64     96      5    0.26   0   0    0.32   0   0    0.00   0   0    0.00   0   0
 300  300      152   0  0.64    179     21    0.36   0   0    0.28   0   0    0.00   0   0    0.00   0   0
 300  300       79   0  0.64    103      8    0.09   0   0    0.14   0   0    0.00   0   0    0.00   0   0
<--- Main menu
 576  576      484   0  2.57   3001   2934   67.70   0   0    1.28   1   0    0.00   0   0    0.00   0   0
 759  760      475   0  3.48   2965   2932   56.18   0   0    0.33   0   0    0.00   0   0    0.00   0   0
 806  803      515   0  3.81   3202   3016   56.93   0   0    4.59   1   0    0.00   0   0    0.00   0   0
<--- After loading
1100 1082     3380   0  9.68   7225   4687   99.11   0   0   92.68  69   0    0.00   0   0    0.00   0   0
1100 1081     6205   0  9.27   7097   4507   98.60   0   0   92.94  74   0    0.00   0   0    0.00   0   0
1099 1079     5511   0  9.37   7142   4603   99.26   1   0   91.74  70   0    0.00   0   0    0.00   0   0

 

Not a throttling issue. The game queues more instruction than GPU can handle. I thought it does something unnecessarily expensive, but since you suggest the game is already fully rendered, I guess my case no longer stands.

 

I'll try to load an older version before they added some of the visual improvements and see if it changes anything.

 

In any case, thanks for taking the time to comment on this. Much appreciated!

Share this comment


Link to comment
Share on other sites

Woah, its the tiny 300Mhz iGPU. In that case... no wonder its at 100% load. 

For a comparison: Modern cards work with clock speeds of way over 1GHz, sometimes up to 2GHz, with much more advanced chip designs and drivers, compared to Intels toys. In that case, i see what troubles you have.

Share this comment


Link to comment
Share on other sites


Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now