chiliwili69 Posted September 17, 2017 Posted September 17, 2017 BOS is multithread, but there is one thread which is the heavy one and limits the overall performance: https://forum.il2sturmovik.com/topic/29322-measuring-rig-performance-common-baseline/?p=499246 We overclock our CPUs to get the maximum fps, but when doing that we normally OC all the cores to the same speed, therefore all cores will generate heat. If I could force BOS to run in one core, I could OC just that core and leave the other cores at the base clock speed. I don´t know if this will reduce the overall heat generation. It could be good for the overall CPU but bad for that core. I really don´t know since I am not a CPU guru. Maybe it is a silly question since I read that the threads are executed in different cores to reduce individual heat in one core. But on the other hand, more extreme OC can be achieved if you only OC one core.
ZachariasX Posted September 18, 2017 Posted September 18, 2017 BOS is multithread, but there is one thread which is the heavy one and limits the overall performance: https://forum.il2sturmovik.com/topic/29322-measuring-rig-performance-common-baseline/?p=499246 We overclock our CPUs to get the maximum fps, but when doing that we normally OC all the cores to the same speed, therefore all cores will generate heat. If I could force BOS to run in one core, I could OC just that core and leave the other cores at the base clock speed. I don´t know if this will reduce the overall heat generation. It could be good for the overall CPU but bad for that core. I really don´t know since I am not a CPU guru. Maybe it is a silly question since I read that the threads are executed in different cores to reduce individual heat in one core. But on the other hand, more extreme OC can be achieved if you only OC one core. No, it is not silly at all. It would help flightsims A LOT if you could reserve specific cores for it and specific cores for OS and other services. Simply adding cpu cores creates problems, and scaling multiple threads over multiple cores is not trivial as illustrated in Amdahl's Law. It means that in consequence you can have a less responsive system by forcing it to scale over more cores. You might have 24 cores, but can't use your mouse properly anymore. Now, if you could force your OS to spread over less cores it would keep your mouse pointer from stuttering and it would make it simpler for the OS to distribute the threads over the cores. In addition to that, Intels "Turbo Boost Max Technology" is seriously flawed and leads to thread congestion, often blocking your central "fiber" thread that your sim is running on. This results in slight stutters, even though you might have very high FPS. It becomes very apparent in the lates 64-bit iteration of Prepar3d V.4. To get smooth framerate, one had to disable Turbo Boost (you need to install Intels software to do that). Setting all cores to a fixed frequency also helps. In contrast to BoX, Prepar3d will use all 12 or whatever cores , so this thread congestion becomes more apparent. It is not sure if Intel is ever going to fix that broken software, because as it is now, it allows for very high frequencies on individual cores. Thus, in the Task Manager, everything looks cool. That the threads underneath are in a traffic jam, you don't see that easily. Few programs require CONSTANT high processing power like flight sims do. So, the metrics of making a product look good spec-wise or alse benchmark-wise are different from making them good "flightsim-wise". I wouldn't bet on Intel investing even a penny on us simmers.
BeastyBaiter Posted September 18, 2017 Posted September 18, 2017 Those aren't chip problems, they are OS problems. Ryzen had some serious issues with windows jumping tasks all over the place resulting in terrible performance when it first came out. It was much worse than Intel chips because Ryzen CPU's are basically 2 fully functional CPU's (CCX's) presented to the motherboard as a single CPU. Jumping between cores on a single CCX wasn't any worse than it doing it to Intel CPU's but crossing a CCX resulted in massive latency. Microsoft addressed that issue quickly and so now processes are assigned a CPU thread and then stay there until the program is closed or the user manually reassigns them when using a Ryzen/Threadripper/Epyc CPU. Looking at my i7 laptop next to me, Windows still has processes jumping needlessly around all 8 threads it has. Unfortunately, that jumping is the default behavior in Windows. When threadripper first came out, despite just being a bigger Ryzen chip, it had the exact same problem Ryzen had with Windows only even worse due to having 4 CCX's instead of two. I saw many reports of bad windows and mouse performance with nothing else running. Microsoft fixed it a week or two after release, so all is fine now from what I've heard. In any case, you can manually assign threads to different tasks in Windows. Going through and manually assigning every single windows task to say, 2 cpu cores and leaving the other 2 for everything else would be a massive pain. I do not know of a way to permanently assign them either. I only know how to do it in task manager.
Dutch2 Posted September 18, 2017 Posted September 18, 2017 There are a few free programs that can do the set affinity trick permanent. Process lasso, little bit fat nowadays. Bill2 process manager. I would try: Processhacker get the nightly build at https://wj32.org/processhacker/nightly.php System explorer at http://systemexplorer.net/ I would disable the HT on your CPU, if using these free software. To give it a try, Windows task manager can do this affinity, it is only not permanent.
ZachariasX Posted September 18, 2017 Posted September 18, 2017 Those aren't chip problems, they are OS problems. That is why I was referring to Amdahls Law. It is a principle, not a product issue. What is a product issue however is the Turbo Boost 3.0 software. It produces thread congestion in addition to the issues you mentioned. Generally, I'd be wary of manually assigning programs individually for cores. Windows is not really made for such. As you say, Windows is always jumping all over the cores and it wants to keep it's own order. It is not made with the thought in mind of putting specific load on specific or dedicated cores. What seems to work best is disabling unneded fuctionality that mainly produces heat on your CPU. To run you sim, do you need virtualization? Do you need hyperthreading? Disabeling unneded things helps more than trying to organize a bag of fleas. It gives you more headroom for OC.
chiliwili69 Posted September 19, 2017 Author Posted September 19, 2017 What seems to work best is disabling unneded fuctionality that mainly produces heat on your CPU. To run you sim, do you need virtualization? Do you need hyperthreading? Disabeling unneded things helps more than trying to organize a bag of fleas. It gives you more headroom for OC. Thanks for these tips. In my BIOS there is a large list of OC/CPUfeatures that I really don´t know if I need them for BOS: Hyperthreading (I put OFF) Active processors Cores (All) (Would it help to put it to 2 or 3?) Limit CPUID Maximum (OFF) Execute Disable Bit (ON) Intel Virtualization Tech (I put OFF) Intel VT-D TEch (ON) (??) Hardware Prefetcher (ON) (??) Adjacent Cache Line Prefetch (ON) (??) CPU AES Instructions (ON) (??) Intel Adaptive Thermal Monitor (ON) (Yes, I need this ON) Intel C-state (OFF) Long Duration Power Limit (255W) Long Duration Maintained (Auto) Short Duration Power Limit (255W) CPU Current Limit (256A) ...
ZachariasX Posted September 20, 2017 Posted September 20, 2017 Thanks for these tips. In my BIOS there is a large list of OC/CPUfeatures that I really don´t know if I need them for BOS: Hyperthreading (I put OFF) Yes, OFF for flightsims in general. They don't use HT. It helps to run an OC'd rig stable at high load as the whole CPU will consume less power. Active processors Cores (All) (Would it help to put it to 2 or 3?) All (always!) Limit CPUID Maximum (OFF) Execute Disable Bit (ON) Intel Virtualization Tech (I put OFF) OFF, yes (you're not running a VM machine on your rig I suppose) Intel VT-D TEch (ON) (??) OFF, also not required. Hardware Prefetcher (ON) (??) ON, you want this Adjacent Cache Line Prefetch (ON) (??) ON CPU AES Instructions (ON) (??) ON (crypto processing will take much longer else. You have plenty of crypto going on in your daily use.) Intel Adaptive Thermal Monitor (ON) (Yes, I need this ON) ON Intel C-state (OFF) Long Duration Power Limit (255W) Long Duration Maintained (Auto) Short Duration Power Limit (255W) CPU Current Limit (256A) ... Should you do any kind of video processing, you should activate hyperthreading. Video processing is very optimized and will use HT to the fullest extent. So, you might have to do a restart for that.
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now