blakemw Posted September 7, 2023 Share Posted September 7, 2023 So I had this interesting experience. I have an i5-12400F, and in general 12th/13th gen intel CPUs eat ONI for breakfast, easily maintaining 60 fps until quite late in the game. I play ONI in Ubuntu Linux. One day I noticed ONI was only running at 15-30 fps even when starting a brand new game. After some sleuthing I figured out this was because I had changed the power profile from "Performance" to "Power saver", either deliberately then having forgot, or some accidental "Cat walked over the keyboard" hotkey. Okay, fair enough, Power Saver is meant to reduce performance. But knowing that ONI is essentially a single-threaded game that loves CPU cache hits (basically memory bandwidth constrained), I decided to see what would happen if I set core affinity to a single core, and bam, back up to a steady 60fps even under "Power saver", and I could pretty much toggle the fps by setting core affinity to a single or multiple cores. An example command which does this: sudo taskset -pc 2 `pidof OxygenNotIncluded` Though it can also be set through System Monitor or I do believe in Windows through Task Manager. However even on "Power Saving" sometimes ONI would run at a steady 60 fps without core affinity being set, and I'm guessing this is sometimes the OS does the "smart" thing and figures that this process likes being on one core, and sometimes it does the "dumb" thing and swaps it rapidly between cores to spread heat. (It's worth noting that the i5-12400F only has performance cores, it has no efficiency cores, on some CPUs the OS might decide to run a process on an efficiency core but that's not applicable in this case) Anyway I'm making this post partly for SEO: in case someone else in the future has mysteriously low FPS but it would also be interesting to see if anyone else experiences an improvement in FPS by setting core affinity. Link to comment Share on other sites More sharing options...
Zarquan Posted September 7, 2023 Share Posted September 7, 2023 For anyone who wants to try something similar on Windows, you can go in to the Task Manager, find Oxygen Not Included in Details, right click and click "Set Affinity." I believe there is multithreading on ONI, but it is mostly on one thread. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.
Please be aware that the content of this thread may be outdated and no longer applicable.