• Hey, guest user. Hope you're enjoying NeoGAF! Have you considered registering for an account? Come join us and add your take to the daily discourse.

Turn 10 Confirms That Forza Motorsport 7 Intentionally Runs Mostly on One Core

I did some testing of RAM speeds with FH3 and underclocking my RAM led to an increase in core 0 load. At normal speed I never saw core 0 exceed about 65% at 60Hz, even from day 1. Forza 7 I see 100% at 60Hz but with no perceivable stutter. Or at least very infrequent.

Does game mode do anything positive for F7? I've found that RTSS framecaps don't do good things for Forza games and are best disabled/overridden.
 

gossi

Member
The thread title needs changing or locking, they said the forum person got it wrong. It’s not locked per core.
 

Xcell Miguel

Gold Member
Does game mode do anything positive for F7? I've found that RTSS framecaps don't do good things for Forza games and are best disabled/overridden.

I don't know, but I have game mode enabled and I don't get any stutter.

Game mode only limit background apps from eating CPU when the focused window is a game.
 
I don't know, but I have game mode enabled and I don't get any stutter.

Game mode only limit background apps from eating CPU when the focused window is a game.

Game Mode actually limits the amount of physical and logical threads the game can use - "reserving" other threads for the OS. IMO; unless you have some very intensive 2-4 thread background tasks running while gaming (I am not sure why you would at all), or for some reason have a game that is purely single threaded and you want to ensure no other applicaion touches its thread, then you should probably always leave Game Mode off.
The way I understand it is that this 100% core does some things related to input (and core gameplay/physics ?), but it's light enough to not use 100% of the core, but they need to "fill" the core so it does not throttle down.

On PC and consoles CPU cores can have independent speeds, and at different speed some computations can have different latency. For exemple my CPU cores goes from 1.3 GHz to 4.4 GHz, ensuring that the core doing input things does it at full speed might be better regarding latency.

That way on console it can still run at 60 FPS if most of the 100% core is just "filling it with empty loops" to ensure the code it executes always get executed at the same speed.

Hrm. I am really not sure how exactly that pans out as being a realistic explanation, as this behaviour seems wholly to be found in Turn10 games (100% on one thread). Other games with great low input latency do not need to purposefully fill a thread with "blank cycles" to ensure they have good input latency and the CPU does not throttle down; rather they spread the workload rather perfectly over multiple threads.

The real test of your hypothesis will have to wait for release unfortunately, if this game cannot run @ 3-4x the framerate @ xb1 or xb1x settings on CPUs that are many times more powerful than the jag, then we know that the 100% thread problem is "depressing" proper CPU scaling.
 

Xcell Miguel

Gold Member
Game Mode actually limits the amount of physical and logical threads the game can use - "reserving" other threads for the OS. IMO; unless you have some very intensive 2-4 thread background tasks running while gaming (I am not sure why you would at all), or for some reason have a game that is purely single threaded and you want to ensure no other applicaion touches its thread, then you should probably always leave Game Mode off.

I often encode videos for Gamersyde, the x264 encoder uses all off the 12 threads of my CPU but by default MeGUI gives it a low priority, so sometimes I play some low CPU-intensive games while it's encoding, like Elite Dangerous.

Before the game mode arrive, it would only make the encoding longer, as the game was eating some CPU time, but the game ran the same way as without encoding.

Now with the game mode, if I play a game while encoding, if the game has the focus, the x264 process only get to use one core, and if I told Windows that Elite Dangerous was not a game, x264 could use the 12 cores again.

I tried with and without game mode and the game ran the same way while encoding, only the background tasks were impacted (x264 limited to one core).

I know there was some tests showing that some games could not use all cores on smal CPUs with game mode enabled, but in my case I never got any problem so I left it on, as long as it can avoid background tasks from eating CPU on more CPU intensive games :)
 

kraspkibble

Permabanned.
i really couldn't care any less as i can get a solid 60fps most of the time but the random freezes/stuttering ruins it for me.

i really really really want to buy this game but performance has to be good in a racing game for me. if i'm being freezed for 2-3 seconds every lap then that ruins it for me.
 

Paragon

Member
What software shows you this info btw? RivaTuner + Afterburner?
Yes, that looks like the latest Afterburner/RTSS beta to me.
It's very customizable, and what I use to display things like frametime and GPU usage graphs.

Game Mode actually limits the amount of physical and logical threads the game can use - "reserving" other threads for the OS. IMO; unless you have some very intensive 2-4 thread background tasks running while gaming (I am not sure why you would at all), or for some reason have a game that is purely single threaded and you want to ensure no other applicaion touches its thread, then you should probably always leave Game Mode off.
While it prevents background applications running anything on the reserved 3/4 of the CPU, what seems to happen is that it moves most of the game's kernel-mode work to the first 1/4 of the CPU, while the user-mode work is moved to the remaining 3/4.
If I set the affinity to CPU15 only and enable Game Mode, there's still kernel-mode work (red) running on the first four cores, rather than preventing the game running anything on that part of the CPU.
It also seems possible for Game Mode to be bypassed under certain conditions. This is with Game Mode enabled, yet Forza has placed a lot of work on the first four cores. That's why I also have to set the process affinity to remove it from the first 1/4 of the cores to eliminate most of the stuttering.

I agree that Game Mode in its current state is not something to be enabled at all times, but I don't think it should always be disabled, and it's not only for low core-count CPUs.
Having a portion of the CPU reserved explicitly for the game is a great thing.
The way I understand it is that this 100% core does some things related to input (and core gameplay/physics ?), but it's light enough to not use 100% of the core, but they need to "fill" the core so it does not throttle down.
It's a nice theory, but it does seem to be the cause of the stuttering for me.
Forcing it to spread that CPU usage across multiple cores by enabling Game Mode and setting the process affinity so that Forza is removed from the first 1/4 of the available cores eliminates most of the really bad performance - though not all of the stuttering.
It seemed to work for Xyber too.
Now with the game mode, if I play a game while encoding, if the game has the focus, the x264 process only get to use one core, and if I told Windows that Elite Dangerous was not a game, x264 could use the 12 cores again.
Are you running the Insider Preview rather than the Creators Update?
With a 12 core CPU, it should be moving background processes to 1/4 of the CPU - 3 cores, not 1.
I know that the Fall Creators Update is supposed to change this behavior, though I'd be surprised if they changed it so that background processes are moved to a single core regardless of how many cores you have. At least I hope that's not what they did. Perhaps it's something like 1/8 and rounds down.

I've found that if the 1/4 reserved for background processes has all cores running at 100%, it can be enough to prevent interrupts being processed and causes the mouse to lag really badly - even if the CPU itself is not running at 100%.
Reducing the number of cores which are reserved for background processes increases the likelihood of that happening, but hopefully they have considered that.

The thread title needs changing or locking, they said the forum person got it wrong. It’s not locked per core.
It's not locked to a single core, but it does do most of its work on a single thread if you have 8 cores or fewer, or two threads if you have more than 8 cores.
Technically, it's doing work on 31 threads here (of 90 total), but only a handful are doing real work and it's mainly running on two of them.
Since I have an 8c/16t CPU, one core working at 100% is "6.25% CPU". So everything other than the first two threads is running below 25% usage on a single core. Total CPU usage is ~18%.
 
Of the whole thing, that's your problem? That I used one word wrong (use instead of max)?



Here:

mV9bFz7.gif

Lol. Nice representation.
 

Xcell Miguel

Gold Member
Are you running the Insider Preview rather than the Creators Update?
With a 12 core CPU, it should be moving background processes to 1/4 of the CPU - 3 cores, not 1.
I know that the Fall Creators Update is supposed to change this behavior, though I'd be surprised if they changed it so that background processes are moved to a single core regardless of how many cores you have. At least I hope that's not what they did. Perhaps it's something like 1/8 and rounds down.

No I gave up with Insider Previews last year, too many problems, so I'm running the Creators Update (15063.608).
Now I'm only in "Release Preview" to get some app update but not beta system updates.

I did not try encoding + playing since a few months and the first time I noticed it was limiting x264 to 1 core only.

I just tried and it mapped x264 to only 4 cores (from 12) when the game had focus, so 1/3, these cores where 0, 2, 4, 6.

Note that game mode can be enabled or disabled for each game in the settings of the gamebar (Win + G).
 

Head.spawn

Junior Member
Is it possible Afterburner doesn't play well with Forza 7? I accidentally pressed the button I use to screencap with it and it was like an instant nuke button on the game.
 

kungfuian

Member
[UPDATE] Via Wccftech-

"Microsoft PR reached out to us in regards to this topic, delivering a statement from Turn 10’s Studio Software Architect Chris Tector. You can find it in its entirety below.

Forza Motorsport 7 is not limited to running on one core. There seems to have been a miscommunication along the way. “Forza Motorsport 7” uses as many cores as are available on whatever system it runs on, whether that is a 4- to 16-core PC or the 7 cores available on Xbox One."


First the flip then the flop, can't say much for Forza but that Microsoft PR machine running on full cores for sure.
 
Is it possible Afterburner doesn't play well with Forza 7? I accidentally pressed the button I use to screencap with it and it was like an instant nuke button on the game.
Maybe. Not taken a pic with it myself just used Windows Print Screen.

As you can see in my pic CPU1 is at 100% and a few at sub 30%. This is with a 7700k@4.5ghz. Total cpu usage was around 27%. You can also see how hot my 7700k runs at around 79c with a Corsair H80i v2 at full speed. Bad luck with this cpu I guess.

Quite happy with performance at 4K, 100% res scale and 8xMSAA. Menu's etc run fairly smoothly and load times are reasonable. They're very slow at 200% res scale.
I don't think this 1 core nonsense will hurt me but I don't understand why it's even here considering it was fixed in FH3.
 

KageMaru

Member
[UPDATE] Via Wccftech-

"Microsoft PR reached out to us in regards to this topic, delivering a statement from Turn 10’s Studio Software Architect Chris Tector. You can find it in its entirety below.

Forza Motorsport 7 is not limited to running on one core. There seems to have been a miscommunication along the way. “Forza Motorsport 7” uses as many cores as are available on whatever system it runs on, whether that is a 4- to 16-core PC or the 7 cores available on Xbox One."


First the flip then the flop, can't say much for Forza but that Microsoft PR machine running on full cores for sure.

Interesting, I thought only 6 cores were available for games on the Xbox.
 

supersaw

Member
Their PR statement is callous BS that can be easily proven false with simple monitoring tools.

Sad to see they haven't learned from the horizon issues. On older cpus the frame pacing is all over the shop.

I was switching between the demo and project cars 2 and the frame pacing difference is night and day.

Was really hoping this would be a flawless port out of the gate.
 

dr_rus

Member
Is it possible Afterburner doesn't play well with Forza 7? I accidentally pressed the button I use to screencap with it and it was like an instant nuke button on the game.

Screenshots and video capture won't be supported for UWP apps for some time as the sandboxed nature of UWP processes makes it difficult to accesses anything outside of sandbox - as a folder for writing screenshots for example.

UWP apps are easy to screenshot with fullscreen capture apps though, like Greenshot. I haven't tried it but Win+PrintScr may work also.
 
Screenshots and video capture won't be supported for UWP apps for some time as the sandboxed nature of UWP processes makes it difficult to accesses anything outside of sandbox - as a folder for writing screenshots for example.

UWP apps are easy to screenshot with fullscreen capture apps though, like Greenshot. I haven't tried it but Win+PrintScr may work also.
Pretty sure I've used PrintScreen on Gears 4 before.
 

dr_rus

Member
Pretty sure I've used PrintScreen on Gears 4 before.

Printscreen will work but you will have to use something like Paint to save the image after pressing PrntScr as this only copies the image into the clipboard. Win+PrintScr saves PNG to system Pictures folder.
 

tuna_love

Banned
Printscreen will work but you will have to use something like Paint to save the image after pressing PrntScr as this only copies the image into the clipboard. Win+PrintScr saves PNG to system Pictures folder.
just pressing print screen saves it to one drive when i just tried it
 

Noobcraft

Member
Printscreen will work but you will have to use something like Paint to save the image after pressing PrntScr as this only copies the image into the clipboard. Win+PrintScr saves PNG to system Pictures folder.
No. Printscreen automatically saves images to OneDrive so you don't need to paste images anywhere.
 

AmyS

Member
[UPDATE] Via Wccftech-

"Microsoft PR reached out to us in regards to this topic, delivering a statement from Turn 10’s Studio Software Architect Chris Tector. You can find it in its entirety below.

Forza Motorsport 7 is not limited to running on one core. There seems to have been a miscommunication along the way. “Forza Motorsport 7” uses as many cores as are available on whatever system it runs on, whether that is a 4- to 16-core PC or the 7 cores available on Xbox One."


First the flip then the flop, can't say much for Forza but that Microsoft PR machine running on full cores for sure.

Pretty interesting.

Anyway, I'm sure the X1X version makes good use of Direct3D 12 baked right into the command processor of the GPU.

Related thread: http://www.neogaf.com/forum/showthread.php?t=1358475
 

watership

Member
Their PR statement is callous BS that can be easily proven false with simple monitoring tools.

Sad to see they haven't learned from the horizon issues. On older cpus the frame pacing is all over the shop.

I was switching between the demo and project cars 2 and the frame pacing difference is night and day.

Was really hoping this would be a flawless port out of the gate.

We will see after the game is out. Everyone goes on about how FH 3 is finally fixed but my coworker can’t get it to get above 30pfs without stuttering. PC gaming.
 

supersaw

Member
We will see after the game is out. Everyone goes on about how FH 3 is finally fixed but my coworker can’t get it to get above 30pfs without stuttering. PC gaming.

I could see them improving this in some capacity before launch but there's definitely CPU / memory bottlenecks at play here that aren't being optimised for. If I were to guess I'd say the cross compilation process for UWP apps isn't highly parallelised and testing of the pc port was mainly done on newer machines.

At a certain point your hardware will be a bottleneck but here it doesn't feel like things are running as well as they could be.
 

Paragon

Member
For what it's worth, the demo is now running almost perfectly for me after installing the Windows 10 Fall Creators Update. I just have to make sure that Game Mode is disabled.
No more messing with the process affinity to just barely get it running at a smooth 60 FPS.
It's now running at ~100 FPS at 3440x1440 with G-Sync enabled, with almost perfect frame-times.
It doesn't fix the stutter that I get for a single frame at specific points on the tracks though - that seems like it's related to loading or memory management or something, since it happens in the same places every time.
 
Top Bottom