FAQ  •  Register  •  Login

AMD CPU balancing issues?

Moderator: MiRai

<<

Stormcalm

Posts: 5

Joined: Thu Dec 18, 2014 5:31 pm

Post Sat Jun 13, 2015 5:20 pm

AMD CPU balancing issues?

Hello,

Afaik, from Delta Rising expansion, basically only option for CPU load balancing that worked decently was/is "Select all CPUs with every window"
My wife and I prefer to have full teams on our disposal, so 5 clients was always the goal/norm.

Few months ago when I was setting up the boxing on only AMD CPU we have (my wife's 8370e), after few hours,
I realized that the only way to have 5 clients running ~fairly~ decently was to actually
set 4 cores per processor option in BIOS. (slots per core 5/5/5/5) (cores per slot 4/4/4/4/4) and clock it to 4.2-4.5.
Default full 8 cores (slots per core 5/5/5/5/5/5/5/5) (cores per slot 8/8/8/8/8) always resulted in slide show through ISBoxer/Innerspace;
even when enabling thread option (I think I read somewhere around here that it basically lumps 2 AMD modules together.
After more then a "few" tries I gave up and we just set the number of cores to 4 before a gaming session.

Honestly, for months, I chalked it up to AMD being AMD and having poor per core performance, thinking that added computing power from 4 cores,
actually made the difference, and we avoided more crowded areas and more demanding missions.

That being said I was wrong, and it is (in my opinion) a ISBoxer/Innerspace issue.

Mainly, a month or more ago I was automating some workload from the office through AHK and inspired by ISB,
I botched/made mini repeater for 5 keys on couple of Excell windows.
Anyway, this post is getting too long as it is so to get to the point:

For fun, couple of days ago, we tried that on 8370e PC, and loaded 5 clients, messed around a bit
((no innerspace/or any other boxing software just 5 clients randomly slapped around the display ), (and since she was encoding some family video few hours before, full 8 cores were on))
and everything worked perfectly ( ...for being on 8370e at least), game was much less choppy, etc.

I really do not want to be presumptuous, but can someone take a look at AMD CPU load balancing for STO?

Thanks.
<<

MiRai

User avatar

Vibrant Videographer

Posts: 3010

Joined: Fri Nov 20, 2009 3:30 pm

Post Sun Jun 14, 2015 7:07 am

Re: AMD CPU balancing issues?

Stormcalm wrote:For fun, couple of days ago, we tried that on 8370e PC, and loaded 5 clients, messed around a bit
((no innerspace/or any other boxing software just 5 clients randomly slapped around the display ), (and since she was encoding some family video few hours before, full 8 cores were on))
and everything worked perfectly ( ...for being on 8370e at least), game was much less choppy, etc.

I really do not want to be presumptuous, but can someone take a look at AMD CPU load balancing for STO?

Thanks.

Simply launching a game with Inner Space, and launching it without Inner Space, are not the same things at all. There is much more that Inner Space handles than simply "double clicking" the executable file and allowing it to load up, and if all of your games weren't running at identical settings, resolution, framerates, background software, drivers, etc... then a direct comparison cannot be made.

While it is weird that turning off cores gave you better results, it doesn't sound like you tried a lot of different CPU strategy options beyond "all clients, all cores," and sort of a round-robin setup with the Hyper-Threading option enabled which pairs up the AMD modules with each other. If you would have posted on the forum earlier than now then we would have most likely suggested that you monitor your hardware (and provide a report), as well as manually adjust your CPU affinity under the Performance tab of each Slot of your Character Set since the CPU Strategy Wizard certainly doesn't handle all possible situations.
<<

Stormcalm

Posts: 5

Joined: Thu Dec 18, 2014 5:31 pm

Post Sun Jun 14, 2015 4:47 pm

Re: AMD CPU balancing issues?

Hello, first, thank you for the reply.

MiRai wrote: Simply launching a game with Inner Space, and launching it without Inner Space, are not the same things at all. There is much more that Inner Space handles than simply "double clicking" the executable file and allowing it to load up, and if all of your games weren't running at identical settings, resolution, framerates, background software, drivers, etc... then a direct comparison cannot be made.


I was not trying to make a direct comparison, nor was I implying that ISBoxer is "just doing simple repeating", I am quite aware that it's doing a lot more visualization under the hood,
I do not even want to know how you came to that conclusion.
I was just giving an example, and explaining, a long the way, how after few months we even got to the point we noticed what may or may not be balancing issue.
I didn't came and started yelling "It is a travesty!", I came here because I really do like the experience and fun we're getting from ISB, and we want more :ugeek: .
I simply made an observation, and asked a polite question/request, which still stands.
And I am asking for help if it is possible.
Which brings me to this:

MiRai wrote:
While it is weird that turning off cores gave you better results, it doesn't sound like you tried a lot of different CPU strategy options beyond "all clients, all cores," and sort of a round-robin setup with the Hyper-Threading option enabled which pairs up the AMD modules with each other. If you would have posted on the forum earlier than now then we would have most likely suggested that you monitor your hardware (and provide a report), as well as manually adjust your CPU affinity under the Performance tab of each Slot of your Character Set since the CPU Strategy Wizard certainly doesn't handle all possible situations.


Thank you for the wiki link, but you were right. I haven't tried a lot of different strategies.... on my i7 machines, on hers AMD though:
-
I have tried them ALL multiple times, over course of couple of weeks, and yes I did play quite a bit, going through controlling process priority and processor affinity through windows powershell.
I am sorry if I was not clear about that in the first post - I am correcting that now.
For me.... writing on the forums, asking for advice is a last option, after all other courses have been exhausted.
-
Like I said, I always (and mostly still do) chalked it up to AMD being AMD, hell, on 5820k I did run 10 clients couple of times,
just for lols, and Innerspace worked gloriously with just a default settings and a minor tweak,
and I am quite sure it could pull more if someone had reason to toy with the options.

Even our 4790k can pull much more than 5, without almost any fiddling at all.
But since a team is limited to 5, for us... it is completely pointless affair.

It may even be that 8370e is just not up to the task, and I am asking too much of it.

Like I said, we did get it going on her CPU, but far from smoothly, and the only reason, I wrote about it here was,
that I did notice a much smoother experience in game clients without ISBoxer/Innerspace, on full 8 cores;
(and yes - it is kinda redundant, since without IS/B, we really do not have any need for multiple game clients. :) ) ;
which made me doubt my own workable setting with 4 cores in the first place.

So please bare with me, and lets start again:

For us, only truly playable setting on her CPU in STO is "Select all CPUs with every window"
with occasional manual affinity correction on certain maps.
What irks me now, is that option works better with 4 AMD cores, instead of full 8.


Thanks.
<<

bob

User avatar

League of Extraordinary Multiboxers

Posts: 4587

Joined: Sat Feb 15, 2014 11:14 am

Location: In the dining room, with the lead pipe.

Post Sun Jun 14, 2015 6:56 pm

Re: AMD CPU balancing issues?

A possibility is you are hitting thermal throttling on the CPU, and cutting from 8 cores down to 4 is not causing it to get quite as hot, despite the effective workload increase per core.

As a stock 8370e is about 2/3rds of a stock 3770k (a 4790 is a bit faster again), then you are already on the lower slope looking up the hill. Why does it work better when restricted to 4 cores in the bios? Assuming it is turning off the 2nd logical of each physical, then there is a whole lot less on chip context swapping, so all of a sudden the store/load/execute cycle for the thread pairs doesn't need to happen, because you have 4 threads, and 4 physical cores, rather than 8 threads and 4 physical cores. That on chip context swapping is pretty inefficient, and is why, on an intel Hyperthreaded chip, you only gain about 30% overall for HT. I don't know whether there is a avg percentage that is applied to AMD's logical core implementation. The intel one has come out of much testing by various people better equipped than myself.

The only way to really know would be some detailed knowledge about how the game is coded, the scheduling that is going on per thread, and loads of other factors that only some serious and deep monitoring would give you an inkling of.
<<

Stormcalm

Posts: 5

Joined: Thu Dec 18, 2014 5:31 pm

Post Sun Jun 14, 2015 10:29 pm

Re: AMD CPU balancing issues?

Well, temps on 100% load are quite decent, Corsair H100i does the job pretty well, even though it isn't a full/true water loop.

Regarding the topic of AMD cores, well, modules, it's a bit of a mixed bag.
And you can't really compare their implementation to HT, since processing units are physically there, but sharing resources.
Cores/Modules/Potatoes, call them as you will, are not like Hyperthreading.

Potatoes are not dual-threaded cores, they are CPU modules that have two cores inside them.
Hyperthreading works by taking the resources of a single core and running two threads through it, and each thread takes a significant hit to performance compared to if they were executed on separate cores.

One module is recognized as two logical cores by the OS, after more than a few issues, a patch released for Windows 7 (Win 8 came out "AMD friendlier" than 7 did.)
Windows recognizes newer AMD CPUs as 4-core/8-thread CPUs since it the way how the operating schedules tasks on the CPU.
Which generally sucks for poor 8370e and the rest of the AMD's forgotten children, but that's off topic.

Why people usually call 8xxx series a "fake 8 core" processor lies mostly with its floating point units and shared resources (L1 instruction cache, fetch, decode, and L2 cache... )
Which even though AMD claims should help feed the cores faster, just instituted an old british tradition (more or less, with a pinch of salt) - queuing.
Module has two 128-bit FPUs that can be paired to carry out 256-bit AVX instructions - hence the 8 core moniker.
Intel CPU core has its own 256-bit wide FPU, AMD made a bet against FPU's wall and decided to bash its head on it, twice in row and added que on top.
...and Heterogeneous System Architecture will most likely be just a shot in the dark. But again, sorry, off topic kinda... since it brings me to this:

I did read that loading unrelated threads on both cores of the same module could yield reduced performance compared to using a core from a different module for each thread.
Instead of assigning tasks sequentially (0->1->2->3->4...) scheduler assigns unrelated tasks as if it were a processor made up of half as many cores first, then,
loads the second core of each module (0->2->4->6->1->3...) treating AMD CPU like an Intel CPU with Hyperthreading to eek out ~5% (measured by the tumb of the internet and late night coffe)
more performance in multiple threaded tasks that only use up to half the CPU cores.

This is the only reason I can think of that can explain why reassigning 4 cores can bring me the performance gain for 5 clients.
Then again, I am not really a CPU guy, so I could be wildly wrong, since I really do not know or want to know how IS handles balancing,
but I do think that my 5 loaded clients should benefit more with a 8 core setup than they do now.

Anyway, it is not that a big of a deal, but I was and am still curious to why we exactly get the performance boost by assigning 4 cores per CPU than with full 8
and if that can actually help us during gameplay and give us a much smoother experience overall.

-
<<

bob

User avatar

League of Extraordinary Multiboxers

Posts: 4587

Joined: Sat Feb 15, 2014 11:14 am

Location: In the dining room, with the lead pipe.

Post Mon Jun 15, 2015 6:59 am

Re: AMD CPU balancing issues?

Well you wrote quite the book, and I don't disagree with it, I just didn't want to write it myself. Yes, HT is not the same as AMD's module implementation, but unfortunately, most people don't know that, most people confuse the two, most people that do know don't want to explain, most people that don't know don't want it to be explained, and HT is for whatever reasons a damn sight more efficient on Windows clock for clock (at this time anyway).

If you select "<No Strategy>" or "Select all CPUs with every window (HyperThreading) (FPS 60/30) (slots per core 3/3/3/3/3/3/3/3) (cores per slot 8/8/8)" from the CPU Strategy Wizard (these are usually the topmost and bottommost options in the drop down), then you are getting effectively the same CPU behaviour as you do when you do when you run the games outside of Inner Space. I.e. in both cases, all CPU's will be used for all the games, and the scheduling of running threads on which core is left up to Windows, with no limits. Ahhhh except in the later case there is a limit because it will still be enforcing a FPS limit (actually it might with No Strategy too, mainly due to it not removing the previous setting). You could disable this too, which you need to do per slot in the character set on the Performance tab. Then you will be just the same as outside Inner Space. Ahhhh except that Inner Space is probably telling the games that they are all running in the foreground, so they will process the keyboard/mouse input, and that means that the game processing loop wont go idle (normally, for properly designed games, when you shunt a game window to the background it drops CPU/GPU usage.... idle. - I can usually tell because the fans spin down and the god-awful cacophony that rattles my teeth, stops, oh, and some games are nice and will stop sending stuff to the sound card). So you could disable the "Make game believe it is foreground window" option in the character set too, but then you might find you can only control 1 game at a time. If you do all that, then you are in the realms of not being managed by Inner Space, but then you might also find, no longer multiboxing (although it is only this last foreground option).

On the other hand, it might just be a case of your Potato is being given a shedload of Floating Point work (as most games do), and then the scheduling is screwing it all up, because there are only 4 chips in that greasy basket, and with a scheduler trying to queue 8 servings at a time it just doesn't work. Who knows. This is why it would be handy to know what the game code is actually doing. Plus all this talk makes me want to go down the chippie and get me my chips and curry sauce, mushy peas and a pickled egg, although a large gherkin might be nice too.


So hidden away in my drivel is a couple of different settings you could check out and remove any CPU/GPU management that Inner Space is doing and see if that changes anything. From the sounds of the first post, you were already using one of the settings, and it didn't change much, but then that might be due to the other foibles of getting multiple windows to accept input at the same time. In some ways, this thread is kind of the poster reason for not using an AMD CPU for multiboxing. They are good for some tasks, usually those that involve a single application making use of multiple threads, but when you load them up with multiple applications with multiple threads, the performance just isn't there.

I'm off for lunch.
<<

Stormcalm

Posts: 5

Joined: Thu Dec 18, 2014 5:31 pm

Post Mon Jun 15, 2015 3:42 pm

Re: AMD CPU balancing issues?

I must admit that the option of not setting/removing any CPU strategy never occurred to me :D

Sadly, I have a metric crapton of work, but I'll toy a bit with it during next few days a bit more.

Return to Star Trek Online

Who is online

Users browsing this forum: No registered users and 0 guests