Disabling core parking

Started by bertie97, August 10, 2012, 02:23:15 PM

Previous topic - Next topic

bertie97

I searched but couldn't find a thread on this.  I was a bit surprised that no-one is talking about this interesting feature (or is it that my search terms are terrible?).
My understanding is that disabling core parking whilst Probalance is active is going to help with loads & responsiveness.  Having a few cores, this seems to be good news.  :)

I have opened the Options / Advanced menu to see the Park Control dialog which gives me options of power plan & CPU parking en/dis -abling.
My first thought was that I want it disabled in Hi Perf to match the likely probalance activity (I have disabled CP during Probalance activity & I am using the PL energy saver capability).
I am a little confused to find that I cannot set CP relative to power plan as this seems to contradict the probalance setting.
If I set Hi Perf to disabled I cannot then set power saver to enabled to match the likely work environment.
Or that is how it appears.  If power saver is configured to allow core parking, Hi Perf will not allow me to save a disabled CP state with the radio buttons.
This is using x.79 beta on 7x64


Attached images show how I configured each plan the last with yellow Hi-lite shows Hi Perf has reverted to old 'enabled' state after reviewing each setting.  I had hit 'apply' when I set HP to CP disabled.


Am I misreading this option somehow?

Jeremy Collake

First, I do see the issue with the dialogs. I am looking into that for the next update. They may not correctly reflect the Enabled/Disabled state. 100 means disabled and 50 means enabled. The checkboxes can apparently get out of sync given a certain set of behaviors. Some systems don't even support core parking, and those also need to be more properly identified.

There may also be some disparity between the various functions of the product. In the end, many things can be accomplished most simply by adjusting power profiles - and the automation of such is a big part of Process Lasso. However, it still supports those who would do things differently.

Please hold as I work here and I will evaluate this in more depth in the near future. Thanks much for the report! I have a relatively good/semi-major update coming to cap of v6.0, before moving on to v6.1.
Software Engineer. Bitsum LLC.

bertie97

Thanks for the info.  I'm using a 1090T & that does have the CP feature for Win7 & 8 to play with I believe.

I have recently read in forums core-parking affects gaming performance.  I will say that having implemented the PL settings stuff is moving a lot quicker.  PC is now faster than I am & keeps beating me   :o
So whilst it may not be quite finished as a PL function it is making a difference. 
I am kinda glad it may still be 'semi-beta' on the dialogs as it means I am not so dumb as to be unable to figure out which radio button to hit.

PL is full of surprises actually, you seem to have added much more than is implied by the manual.  The implications of some of the capabilities are a lot further reaching than I saw the historical PL releases.
PL is becoming a must-have geek toy as well as a vital tool I think.

TfH

@bertie
Nice to see fellow 1090T user :) If I understood correctly your post, 1090T don't support Core Parking (in AMD it's called Power Gating). If you like to disable "Core Parking" go in your BIOS and disable C6 (if your mobo have that option). I might remember wrong (waked few minutes ago, 6.30pm here) but I remember reading somewhere that disabling that option can have undesired effects to SSD/HDD performance. Don't ask me why, I don't remember.

So don't take this reply as "pro" reply, being half wake and having first Java cuppa :)

BenYeeHua

Quote from: TfH on August 12, 2012, 11:35:56 AM
I might remember wrong (waked few minutes ago, 6.30pm here) but I remember reading somewhere that disabling that option can have undesired effects to SSD/HDD performance. Don't ask me why, I don't remember.
From ThrottleStop manual
QuoteThe C3 Auto Demotion and C1 Auto Demotion options have been shown to increase 4K Write speeds on SSD hard drives significantly. When running on battery power, leave these unchecked and set the C1 button in the picture as high as it can go so your CPU can enter the deeper C sleep states and conserve power.
When you Google this"ThrottleStop c6 ssd"
And my friend from tieba.
http://tieba.baidu.com/p/1666490835
Yes, disable c6 can increasing SSD reading/writing speeds significantly, but HDD?
No, as I cannot search about it.

QuoteSo don't take this reply as "pro" reply, being half wake and having first Java cuppa :)
+1
But it is 2012-8-13 0:51:25 at here  ;D

TfH

Thanks Ben :)

OT: I always wake up between 5pm->7pm and go to sleep between 8am->10am :)

BenYeeHua

Quote from: TfH on August 12, 2012, 03:53:43 PM
Thanks Ben :)

OT: I always wake up between 5pm->7pm and go to sleep between 8am->10am :)
Some time, as I always getting a clear mind on midnight   ;)
I cannot having a clear mind in a noisy environment, I need a cool, quiet place and not be harassed by other people.
-----
Just making some correction, they are disabling c3/c6, c1e and EIST to get the normal SSD speed(by increasing temperature and disabling TurboBoost on some processors also)
http://forum.techinferno.com/storage/171-maximum-ssd-performance-your-laptop-throttlestop-registry-mod.html
But AMD processors can getting back the normal SSD speed by doing this or not, I don't know  ;D

bertie97

Thanks guys.
I have heard that Core-parking is a Win7 function that affects multi-cores - AMD & Intel.  I saw a post specifically about reg hacks for CP, AMD & WoW. 
So I figured it must apply to my PC.  I do not know definitely though.

I have noticed since disabling CP in probalance that the PC is faster (illusion? Maybe PL#6 is just doing a better job), it certainly seems much quicker in ToW2 than it was.  Even when I am in a <200 units battle it's smooth.  (The game sims every bullet/shell fired, trajectory & collision/richochet event - so the CPU takes a serious thrashing.)

I am not sure about the ref to SSD settings - no SSD yet, tho it might not be long, so I don't know how the config will pan put.
I am using a 890fx btw, so I have a few settings to trawl through.

BenYeeHua

#8
Quote from: bertie97 on August 13, 2012, 09:06:53 AM
Thanks guys.
I have heard that Core-parking is a Win7 function that affects multi-cores - AMD & Intel.  I saw a post specifically about reg hacks for CP, AMD & WoW. 
So I figured it must apply to my PC.  I do not know definitely though.

I have noticed since disabling CP in probalance that the PC is faster (illusion? Maybe PL#6 is just doing a better job), it certainly seems much quicker in ToW2 than it was.  Even when I am in a <200 units battle it's smooth.  (The game sims every bullet/shell fired, trajectory & collision/richochet event - so the CPU takes a serious thrashing.)
PS:This is not a "pro" answers, if any wrong, please point out the wrong place and teach me, thank  ;)
Yes, if you using software that required very low latency real time processing of data like a DAW(Just Google "Sonar Core-parking" and you can find about it), you can hear the difference(pop sound gone, as example)
And smooth like you say.
Just read about it
http://bitsum.com/about_cpu_core_parking.php

QuoteIf you look at your CPU utilization and see 15%, that is actually the percentage of time the CPU was active within a relatively large interval (usually 1 second). Actual CPU utilization most often occurs in micro-bursts where the CPU is fully consumed for a few nanoseconds or microseconds. You want those bursts to execute as fast as possible, and this is why all power saving technologies, including frequency scaling, incur *some* performance hit. This is also why a faster CPU does matter, even if you typically don't utilize 100% of available CPU time over a larger interval.

QuoteAdditionally, I've found Windows CPU Parking to be excessively aggressive by default. In one test bed, an AMD Bulldozer platform (8150), the scheduling problems were *very* apparent. Turning off CPU Parking causes an immediate boost in responsiveness, particularly for the virtual machines and multimedia applications.

For how I looking about it

Remember how a Processor working like multi-tasking?
Switching between the threads by following the priority in a short-time so it work like multi-tasking, but it need time to switching it also.
When you disable Core-parking, the kernel will putting all threads over all processor.
So the game-threads that required to processing finish ASAP will finish processed faster by reduced the wait time to switching to its turn.
And when you parking the core, you need time to unparking it also, that need time also.
If the CPU utilization are jumping between the percent it need to parking 1 core, and unparking 1 core, what happen?
Increased wait time for it.

Most people that playing BF3 and disabling Core-parking found that, Wow! the responsiveness boost!
And some guys testing on WinRar Benchmark found that, disabling Core-parking increasing the performance
http://bitsum.com/forum/index.php/topic,1378.msg6803.html#msg6803



PS again:This is not a "pro" answers, if any wrong, please point out the wrong place and teach me, thank  ;)
And decreasing when having 2 real core, 2 fake-core/HT, because they(the 2 thread on 1 core) will fight for the only resource(1 core).
As HT is reducing the idle time of core, reducing the total time of a mission, but increasing the time 1 thread need to processed finish.

If you disabling the Core-parking, the fake core will unparked, so the threads will fight for it, especially when the CPU utilization are nearly 100%
So what you get when the software supporting 2 multi-thread, they just maybe most of time putting it on the same core and fighting for it while the other cpu are idling.

Many gamer found that disabling HT in BIOS can get boost for supporting 2/4 multi-thread game, so when you having less than 4 real core, please compare youself the game performance enable/disable Core-parking, and enable/disable HT in BIOS
------
And some guys out that misunderstand about HT, Core-parking and the software/games are supporting multi-thread of not.
They watching the CPU utilization of the fake core/HT when playing online game, by increasing the people in a scene of the game, the CPU utilization increased, so the OS unpark fake-core/HT and they saw the fake-core are using and say that.

Heh!It prove that the online game can using the HT!!! So this game support multi-thread for 4 core, and it can using fake-core/HT to boost it!!!

But the picture show that, the software/game Total CPU utilization is not more than 50%, its meaning that it is supporting multi-thread for 2 core.
------
And I wanna ask about multi-thread, how I can know that it is supporting multi-thread for x core?

bertie97

As I am running AMD I have real physical cores - no HT.
This is one reason I find PL useful as I am able to pipeline processes to what would possibly be unused cores with some software.
Finding out that newly written s/w isn't targeted at multi-core - such as BFCs Combat Mission - is something that I believe PL can ameliorate.
I spent a while testing ToW as I had issues (see my post about Theatre of War).  Being able to offer more cores than the code initially targets seems to help. 

I wonder how difficult it would be to hand-off 'surplus' queued threads from a prog written for a single core to multiple cores.  ???
By which I mean have software written for a single core access multi cores as one 'big' single core.
I don't know enough about header flags etc to hypothesize in any depth, but it would be cool to do it for stuff that is coded for 1-2 cores when the CPU has 4, 6, 8, 12 cores etc..
Spoof core ID on the fly to the process queue perhaps? 

PL 7 to the rescue?   :D

BenYeeHua

Quote from: bertie97 on August 13, 2012, 01:44:37 PM
As I am running AMD I have real physical cores - no HT.
This is one reason I find PL useful as I am able to pipeline processes to what would possibly be unused cores with some software.
Finding out that newly written s/w isn't targeted at multi-core - such as BFCs Combat Mission - is something that I believe PL can ameliorate.
I spent a while testing ToW as I had issues (see my post about Theatre of War).  Being able to offer more cores than the code initially targets seems to help. 
Ya, decreasing the time to start processing it.

QuoteI wonder how difficult it would be to hand-off 'surplus' queued threads from a prog written for a single core to multiple cores.  ???
By which I mean have software written for a single core access multi cores as one 'big' single core.
I don't know enough about header flags etc to hypothesize in any depth, but it would be cool to do it for stuff that is coded for 1-2 cores when the CPU has 4, 6, 8, 12 cores etc..
Spoof core ID on the fly to the process queue perhaps? 
PS:This is not a "pro" answers, if any wrong, please point out the wrong place and teach me, thank  ;)

Software support multi-threading is having a vague meaning, but mostly the meaning is, 1 job(physics engine, for example) can be distribution to 4 thread, or even 8 thread(or more) to every core processing it.

Like you having a cake, the job is finish eating it, so you cutting the cake into 8 piece(threads), and giving other people(core) to finish it  ;D
But some jobs you cannot cut it, like you are hungry, you cannot call other people eating foods to fill your stomach  ;D
So it must be finish by 1 person(core)

And some is hard to cutting it as many problem is stopping them cutting it(time, money etc)

And core parking is doing this
QuoteAdditionally, parking CPUs can potentially reduce core thrashing - when a thread is swapped between cores unnecessarily, causing a performance hit
Like L2/L3, when only 2 core reading/writing data from/to L2/L3, it is fine, but how about 8 core?
Many threads are swapped between cores unnecessarily, so the core need reread/write data from/to L2/L3, and causing cache miss to other threads as the capacity is small.

QuoteBy which I mean have software written for a single core access multi cores as one 'big' single core.
Nope, the frequency of core are same, so it meaning they running with same speed(frequency), at the same time.
So how can you making it faster by adding it?

The only way is increasing frequency, decreasing the cache miss etc(Sorry, lack of knowledge  :P)
So it is on the Processor side, and software written for using Instruction set of Processor, increasing threads to deceasing cache miss etc.

Many newbie thinking like this, and lie by profiteer.
Hei! see this processor, it containing 8 core, so you know how fast is it?
2Ghz Per core, so when you add it, it become 2x8=16Ghz  ;D

QuotePL 7 to the rescue?   :D
Nope, only the Windows CPU scheduler that assigning threads to which core can doing this.
And PL target is getting the responsiveness back to user, decreasing waste of resources(core) can helping it  ;)

bertie97

It wasn't a question of speed that concerned me, just the 'appearance' of available bandwidth across a 'single' core.
i.e. if one created a virtual wideband core from multiple cores in terms of available addressing for the routines being piped to it.
As with your cake (& now I'm hungry)  :) My understanding is that multi-core allows one to hand off processes to dedicated cores.  (So a dev can allocate each software component to a set of physical resources within his codebase.)  Then it all has to be synchronized to events.

It would be nice if software specifically written for 1 or 2 cores could deliberately take full advantage of all available cores in an optimal way.
Taking an 8 core & creating 2 virtual cores (each having access to 4 real cores) could provide extra bandwidth for the software in my (uninformed) theory.

I don't know how you would cope with things like load-balancing, queueing & synchronicity of processes as I am not a software genius  :P  this is just a bit of lateral thinking.

This would also have to include your note
QuoteMany threads are swapped between cores unnecessarily, so the core need reread/write data from/to L2/L3, and causing cache miss to other threads as the capacity is small.
within it's scope.

.....So PL7+ needs to hack Win CPU scheduler  ;D

Now wondering how to get back on topic  ;D  :P

Victek

Quote from: bertie97 on August 14, 2012, 08:30:48 AM
It wasn't a question of speed that concerned me, just the 'appearance' of available bandwidth across a 'single' core.
i.e. if one created a virtual wideband core from multiple cores in terms of available addressing for the routines being piped to it.

I don't know how you would cope with things like load-balancing, queueing & synchronicity of processes as I am not a software genius  :P  this is just a bit of lateral thinking.

This is a bit over my head, but I am interested in learning more about core parking to the extent that it can be managed in Process Lasso.  It would be nice to know what the advantages and disadvantages are for various scenarios.  It sounds like Jeremy is working on it.  There hasn't been an update for, like, two days though - maybe someone needs to run out and get a pizza?  LOL  I'm sure we'll be hearing from him soon  :)

bertie97

Back on topic....  ;)
Having been forced to play several hours of games to test PL core parking - I can say my overall performance has improved with the PL over-ride/management.
Once it is fully tweaked I am expecting an even better overall experience.  I am also interested in the possibly coincidental (?) reduction in temps.  Not much, but a 3-7C degree drop definitely.  Is spreading the load helping to balance localized core over-heating I wonder?

It's one of those settings that I would otherwise not play much with but I am quite surprised at the overall impact on the 'feel' of the PC.
Don't know what I'd do without PL making it easy to alter the environment.

All this talk of cake & pizza, whats next? Beer?

BenYeeHua

Quote from: bertie97 on August 14, 2012, 02:22:31 PM
Back on topic....  ;)
Having been forced to play several hours of games to test PL core parking - I can say my overall performance has improved with the PL over-ride/management.
Once it is fully tweaked I am expecting an even better overall experience.  I am also interested in the possibly coincidental (?) reduction in temps.  Not much, but a 3-7C degree drop definitely.  Is spreading the load helping to balance localized core over-heating I wonder?

It's one of those settings that I would otherwise not play much with but I am quite surprised at the overall impact on the 'feel' of the PC.
Don't know what I'd do without PL making it easy to alter the environment.

All this talk of cake & pizza, whats next? Beer?
1 beer for me  8)
But I am not 18 years old yet  :P
And I am reading about CPU thing, so I reply late  :P
----
I think is mostly the power save like C&Q is reducing your frequency if you haven disable it, so the frequency is failing down, and its much cooler
And If you having it disable, I think that is your CPU thermal grease not good and putting all the jobs to all core and getting almost same heat from all core to reducing temp more easily.

Quote from: bertie97 on August 14, 2012, 08:30:48 AM
As with your cake (& now I'm hungry)  :)
Just buying a cake and eat it  ;D
----
Waiting Jeremy/other experts to answers it is the fastest way to knowing the answers  :P
----
QuoteIt wasn't a question of speed that concerned me, just the 'appearance' of available bandwidth across a 'single' core.
i.e. if one created a virtual wideband core from multiple cores in terms of available addressing for the routines being piped to it.
QuoteMy understanding is that multi-core allows one to hand off processes to dedicated cores.  (So a dev can allocate each software component to a set of physical resources within his codebase.)  Then it all has to be synchronized to events.
That is what Windows CPU scheduler doing it, hand off the threads of processes and allocate to all core.
And about available bandwidth, just checking L1, L2 and L3 cache of speed and you will knowing it.  ;)
----
QuoteIt would be nice if software specifically written for 1 or 2 cores could deliberately take full advantage of all available cores in an optimal way.
Taking an 8 core & creating 2 virtual cores (each having access to 4 real cores) could provide extra bandwidth for the software in my (uninformed) theory.
I know what you are meaning, your meaning is using 1 thing inside the Processor to parallelize 1 thread into multi-threads, you need to waiting for "Anaphase" as Intel mention of it 2 years ago.

But you better read this.
https://scalibq.wordpress.com/2012/06/01/multi-core-and-multi-threading/

The thing that you can parallelize is
e = a + b + c + d (1 thread)
into
t0 = a + b
t1 = c + d
e = t0 + t1
(3 threads)
but the last thread need the data of 1st and 2nd thread as said
QuoteHowever, to calculate e, you need the results of both threads. So part of the algorithm can be parallel, but another part is implicitly sequential. It depends on results from earlier calculations, so there is no way to run this calculation in parallel with other dependent calculations.
And
QuoteAmdahl’s law deals with these limitations of parallel computing. In one sentence, it says this:

   
QuoteThe speedup of a program using multiple processors in parallel computing is limited by the time needed for the sequential fraction of the program
The sequential parts result in situations where threads for one step in the algorithm have to wait for the threads of the previous step to signal that they’re ready. The more sequential parts there are in a program, the less benefit it will have from multiple cores. And also, the more benefit it will have from the single-threaded performance of each core.

And that brings me back to the original point: people who think that the number of cores is the only factor in performance of multithreaded software.

So the most important is the single-threaded performance of each core to processing the sequential parts
The part that cannot be cut, and AMD processor that lack of this part now, single-threaded performance of each core

QuoteNow wondering how to get back on topic  ;D  :P
This... I don't know  ;D :P

Quote from: Victek on August 14, 2012, 01:56:21 PM
This is a bit over my head, but I am interested in learning more about core parking to the extent that it can be managed in Process Lasso.  It would be nice to know what the advantages and disadvantages are for various scenarios.  It sounds like Jeremy is working on it.  There hasn't been an update for, like, two days though - maybe someone needs to run out and get a pizza?  LOL  I'm sure we'll be hearing from him soon  :)
If you meaning core parking, yes, it has been added to PL 6, just checking the setting of ProBalance and you will found it  ;)
When ProBalance restraint, it will making all core unpark until restraint finish.
----
Advantages
Decreasing of time to processing all threads
Increasing responsiveness for user
etc  :P

Disadvantages
QuoteAdditionally, parking CPUs can potentially reduce core thrashing - when a thread is swapped between cores unnecessarily, causing a performance hit
Causing a thread performance hit.
Increasing heat, power etc
Turbo boost can't making 2 core working for higher frequency as other core are not parking, making 1 thread that full utilization of 1 core performance hit
Causing a performance hit to some multi-threads software when having fake-core/HT
etc  :P

Quote.....So PL7+ needs to hack Win CPU scheduler  ;D
Maybe windows 8 scheduler having some improve.

Hungry again as reading too much  :P

French bread for me  ;)

Victek

Quote from: bertie97 on August 14, 2012, 02:22:31 PM

It's one of those settings that I would otherwise not play much with but I am quite surprised at the overall impact on the 'feel' of the PC.
Don't know what I'd do without PL making it easy to alter the environment.

All this talk of cake & pizza, whats next? Beer?

I thought the drink of preference was Mountain Dew?  Anyway, I expect Jeremy will jump in soon with some new information.

bertie97

BenYeeHua - the scalibq is a useful blog article for clarification of CPU interaction on threading.
http://www.xbitlabs.com/news/cpu/display/20100519235548_Intel_Outlines_New_Tech_to_Boost_Performance_of_Single_Threaded_Software_on_Multi_Core_Chips.html
QuoteResearchers from Intel Labs Barcelona have developed “Anaphase” technology, which is a novel hardware/software hybrid approach to leverage multiple cores in order to improve single-thread performance on multi-core processors. This research focuses on different speculative techniques to automatically partition single thread applications to be processed on multiple cores.
- does sound like it could be what I mean.  (If I believe Intel  :P )  We are back to my question about synchronicity I think........

My cores are dynamically clocked by the AOD software - hence the temp. change range  I guess.  My impression is the PC is smoother & behaving more dynamically, & I am inclined to thank PL for that.  That I suspect has a knock-on effect to the heat generated - useless cycles & thrashing being avoided where possible.





BenYeeHua

Quote from: bertie97 on August 15, 2012, 01:24:46 PM
BenYeeHua - the scalibq is a useful blog article for clarification of CPU interaction on threading.
Thank for the blog, get another source of knowledge  ;)

QuoteMy cores are dynamically clocked by the AOD software - hence the temp. change range  I guess.  My impression is the PC is smoother & behaving more dynamically, & I am inclined to thank PL for that.  That I suspect has a knock-on effect to the heat generated - useless cycles & thrashing being avoided where possible.

Yup, if your processor is not support core-parking, parking the core to save power and reducing the heat.(and turboboost also)
As you unparking the core and using it to getting the performance increasing overall.

And maybe the single threads performance is decreasing(core thrashing as switching between more core), but with huge decreasing of switching threads on 1 core(and maybe your L2/L3 cache is just bring small problem to core thrashing), so you getting a better performance.

Quote from: Victek on August 14, 2012, 07:15:55 PM
I thought the drink of preference was Mountain Dew?  Anyway, I expect Jeremy will jump in soon with some new information.
Never drinking it as my money is managing by my parents, I will try it when I having a chance  ;)

------
The core-parking in ProBalance is still not-working on this laptop, maybe because it is not-working on laptop?

Jeremy Collake

Guys, I apologize for the delay. It's been a long week here, perhaps the longest I've had this year. Anyway, I will catch up as soon as possible. I don't want to post anything in haste, so have some posts to go through.
Software Engineer. Bitsum LLC.

edkiefer

If your talking mainly gaming it is really hard to make even quad core run full , its just the way it will be as because in games its very dynamic and data is waiting on you and other players. You can't jump to newer thread or newer parts of data till whats done is done . Only if the game was very scripted would this work and thats not a good thing with a game/sim IMO, you want it to be highly dynamic so replay is different each time .
That Intel link is interesting, braking up single thread into multi-core uses but i just wonder how compatible it is (can same code run on AMD systems), I also have a feeling it only would work on very long thread workloads (just a guess) . its real hard to parallel code in games, so things can be done like new physics and damage, these can be done at same time and give better damage and feel .

With AMD new CPU they have cores sharing many parts so its kind of like HT but while there stronger than Intel the OS see's it the same. I think this is the problem or one of them .
Bitsum QA Engineer

Jeremy Collake

#20
Ok, whew, what a long thread to go through ;p. That's why I delayed it, after my 'off' week here. Of course, I *never* truly get time off. There are always support, updates, and well... a million things to do.. even on my days off. The one mistake I made was issuing a beta during the days off, one I'd been working on in VS2012. It broke XP compatibility, until I implement a work-around, or until Microsoft issues their update to VS2012 so that it supports XP. Had I known this, I'd not have made the switch. I do have the capability to go back to VS2010, I have build environments set up already, so I may do that - though prefer to forge ahead with VS2012.

Quote
I have noticed since disabling CP in probalance that the PC is faster (illusion? Maybe PL#6 is just doing a better job), it certainly seems much quicker in ToW2 than it was.  Even when I am in a <200 units battle it's smooth.  (The game sims every bullet/shell fired, trajectory & collision/richochet event - so the CPU takes a serious thrashing.)

It is likely NOT an illusion. Core Parking can be over-aggressive on some platforms. Microsoft even realized this, adding a second parameter to better control how aggressive it. I can attest to dramatic improvements on some platforms.

Quote from: bertie97As I am running AMD I have real physical cores - no HT.

This is no longer true with newer AMD processors. They use Bulldozer (or later) platforms that pair cores into modules that share computational units. The Windows Scheduler treats them as HyperThreaded, and indeed they are - though at a lesser extent that Intel's. AMD essentially did the opposite of Intel, share a few computational units, instead of most computational units.

I added that graph to the About Core Parking page, should have a long time ago. Now, I can't say how reliable it is, and results WILL vary. I can say that my experience on an AMD 9150 (Bulldozer, so the scheduler treats it as hyperthreaded) worked especially well. I mean, enough to notice WITHOUT any doubt. This was most likely because the Windows CPU Scheduler was treating the Bulldozer processor as HyperThreaded, when it really should be designed to properly handle these processors. On these processors, core parking should be substantially tuned down, that should mitigate the problem.

I am going to work on ParkControl today and see if I can improve the inconsistent view you see somethings.

Can you guys give me a quick summation of any other questions or comments you'd like addressed? I know that sounds absurd, but it will save time. A boiled down, concise rendition of any outstanding features requests OR general questions.
Software Engineer. Bitsum LLC.

BenYeeHua

Sorry for the fail that making it short as my English language is bad  :P
I will trying making a short question at top  ;)

1.Using newest VS2012 is getting performance, but losing compatibility as user need to install the update?
2.Did Intel compiler still not supporting the new instructions(AVX, for example) for non-intel CPU?
3.Will ParkControl become more functional?
4.The disabling of core-parking in ProBalance working >90% of computer(that support core-parking)?
5.Using HPET can getting more performance for gaming and other software?(I only know that changing this for lose-control for speed of software/game when overclocking FSB)
5.What do you think about Piledriver before it came out?
-----
Using the newest VS2012 is to improving performance, but losing compatibility for user that has not installed VS2012 as they need to install it?
And the software that written by using Intel compiler, still not supporting the new instructions(AVX, for example) that other non-intel CPU supporting?
http://www.agner.org/optimize/blog/read.php?i=194&v=f
-----
ParkControl
And will it able to changing all of this?  ;D
The setting that need to change to showing this
http://www.xtremesystems.org/forums/showthread.php?277129-Core-parking-on-Windows-Seven&p=5009710&viewfull=1#post5009710


PS:Can I using some of this function to disable EIST, as laptop cannot disabling it.
-----
So, will the function of ProBalance that disabling Core-Parking working on mostly 90% computer that using PL 6?
It still not working here, just like the OS don't set it immediate, but after reboot/changing Power Plan.
-----
When using HPET, I found that when gaming, the frames are stable and I getting more 20-30 FPS from gaming as it having 480-500FPS (2d, for sure  ;D)
This is tested with the timer resolution is 1ms.
Before I changing it, it also accurate as 1.0000:1(100 sec)
But some person getting the opposite, they found that disabling HPET on bios getting more performance than enable/using it.
And using HPET getting micro-stutter, more DPC latency.
What the difference by changing it?
Can it really improve it like reducing DPC latency so the data can send to graphic card in short time?
Or just using it can making the FPS counter more accurate only?
http://www.neowin.net/forum/topic/1075781-tweak-enable-hpet-in-bios-and-os-for-better-performance-and-fps/
-----
And what do you think about Piledriver, based on what I get from here
http://www.overclock.net/t/1291114/coolaler-amd-piledriver-fx-vishera-engineering-sample-benchmarks
At least 5-15% improve from Bulldozer with the same frequency/clock

Sorry for asking so many, as most people that I know does not having this knowledge. :)

Jeremy Collake

Quote from: BenYeeHua on August 18, 2012, 03:24:29 PM
1.Using newest VS2012 is getting performance, but losing compatibility as user need to install the update?

The compatibility problem inherent in VS2012 at this time (dropping of XP/2003 as a target - see VS2012 and XP/2003 for more information. However, I have already developed a work-around, PESetVersion, adding to the PESuite tools. I am testing to make sure this solution will work and there are no CRT restrictions I must also overcome. If there are, I will go back to VS2008 (which I have at the ready in a virtual machine) and use it, or possibly just patch the CRT.

Microsoft decided to restore support for XP / 2003 in the end, BUT it won't come until some yet-to-be-announced update 'later this Fall'.

Quote
2.Did Intel compiler still not supporting the new instructions(AVX, for example) for non-intel CPU?

I do not know about Intel's compiler. I've only tried it out once, and am not an expert on what it does or doesn't support.

Quote
3.Will ParkControl become more functional?

Yes, I am reworking it now, and WILL be adding the option to add the option to the Power Options. It kind of negates the need for ParkControl, BUT ... whatever ;).

Quote
4.The disabling of core-parking in ProBalance working >90% of computer(that support core-parking)?

Automatically disabling core-parking when CPU usage is >90%? Yes, I can and should implement that. Thank you for the suggestion.

Quote
5.Using HPET can getting more performance for gaming and other software?(I only know that changing this for lose-control for speed of software/game when overclocking FSB)

It can change the performance of multimedia and games because it increases the clock granularity, allowing for events to be more precise. I don't know if that answers your question or not, but it is simply a more precise timer. It doesn't really make anything faster by default, though can make measurements faster, and could potentially allow for a more efficient CPU Scheduler.

Quote
5.What do you think about Piledriver before it came out?

I have no opinion on it ;p.

Quote
http://www.agner.org/optimize/blog/read.php?i=194&v=f

Glad Agner is still alive ;). I read his stuff like 20 years ago, lol. Anyway, I will have to read this article and see if I can determine what you are asking and/or provide my comments on it. I'll put it in response #2.

..... RESPONSE #2 is PENDING.
Software Engineer. Bitsum LLC.

BenYeeHua

Quote from: bitsum.support on August 18, 2012, 04:46:19 PM
Microsoft decided to restore support for XP / 2003 in the end, BUT it won't come until some yet-to-be-announced update 'later this Fall'.
Good to hear this, so the developers no need to do more extra work to support(after it release the update for xp)  :)

1.The core-parking(ProBalance) still no working here, and it is making core-parking disable after reboot/changing PowerPlan.
2.Did disable core-parking with a 2 core, 4 logical bringing a performance increase, or opposite?
3.When disabling core-parking, did windows put less threads on fake-core?
(And is Windows 8 working like this?)
4.Maybe disable core-parking when gaming mode enable, CPU usage>50% for 4 core, 8 logical is better?
(As maybe the software that support multi-thread max to 4 thread swapped to 2/4 cores most of the time as it is just unparking some fake-core, making the core usage not balanced).
5.So why windows 7 is using TSC+HPET/LAPICs as Vista is using HPET/LAPICs as default?
As it could potentially allow for a more efficient CPU Scheduler.
(As I found one of the reason is green agenda  :o)
6.Can auto-update showing at background and not steal the focus when software is full-screen, that annoying when gaming.
----
The disable core-parking(ProBalance) still no working here
Having test like this
1.Make sure the function of disable core-parking(ProBalance) has been tick, ParkControl showing 50% minimum core unparking
2.Running CPU eater by 1 thread to let ProBalance restraint and checking the core is still parking or not(showing parking at here, fail)
3.Exit CPU eater
4.Using ParkControl to check the setting(when ProBalance is not restraint), showing 100%(should not showing 50%?)
5.A reboot or changing PowerPlan to check core-parking is enable or not(nope, it is disable, it should be enable as default)

ParkControl is working here, ProBalance(disable core-parking function) is fail, and it make the core-parking disable after a reboot, changing PowerPlan.
Any idea?
----
Quote(Maybe the 4 thread swapped to 2/4 cores most of the time as it is just unparking some fake-core, making the core usage not balanced).
Speculate with this picture/testing


Quote..... RESPONSE #2 is PENDING.
..... RESPONSE #2 is WAITING.  ;D
As I don't like that Bulldozer working bad for some software is this reason.

And sorry for having so many "maybe" and questions  ;D

Jeremy Collake

Sorry for the wait ;o. I will catch up and finish as soon as I issue this next minor update. It is very important, a lot of people have been waiting on it. Heck, the beta didn't even work in XP for the last 3 days, and didn't work in XP x64 up until now. I've got to test everything pretty rapidly and get it out, as some are seeing crashes in the current final (with minidumps). Of course, I can't release it until I think it is ready. Since VS2012 went final, that is no longer a blocker, but I still must do some more testing, and there are some other known issues I want to address.
Software Engineer. Bitsum LLC.

BenYeeHua

Quote from: bitsum.support on August 19, 2012, 01:37:39 PM
Sorry for the wait ;o. I will catch up and finish as soon as I issue this next minor update. It is very important, a lot of people have been waiting on it. Heck, the beta didn't even work in XP for the last 3 days, and didn't work in XP x64 up until now. I've got to test everything pretty rapidly and get it out, as some are seeing crashes in the current final (with minidumps). Of course, I can't release it until I think it is ready. Since VS2012 went final, that is no longer a blocker, but I still must do some more testing, and there are some other known issues I want to address.
That fine, late better than nothing.  ;)

Jeremy Collake

... and then my anniversary came, so had to tend to the wife :o. I will finish this discussion today. I can finally get back into my routine here, whew.
Software Engineer. Bitsum LLC.

BenYeeHua

#27
Quote from: bitsum.support on August 22, 2012, 10:11:03 AM
... and then my anniversary came, so had to tend to the wife :o. I will finish this discussion today. I can finally get back into my routine here, whew.
And hope you having a some nice days on trip ;)
----
Adding another questions first, as it is midnight here. you haven reply  ;D
---- ← cutting line for more information
Building the short question at here
7.Can I making core-parking more smartly(and disabling fake-core, EIST etc)?  :D(Because it is "some" important, so I repeat asking 2 times)
8.When I disable core-parking, it still going C-state right?
9.What benefit can I get from memory trim?Faster GC?and it can be using by other process?(Just pushing into Standby list, not pushing it into page-file)
hxxp://www.pcwintech.com/about-other software
10.Changing AdditionalCriticalWorkerThreads and AdditionalDelayedWorkerThreads to 0x10 (16), what can I get?
Less DPC latency?
11.Can I using this(Interrupt-Affinity Policy (IntPolicy) tool) to reduce DPC latency?
(by reducing swapping when disable core-parking)
12.And why the responsiveness of PL and CPU eater(when running it) will decreasing by time, but it still responsive at it should
(I found it become smooth, it was lag before, I don't know this is because it is 1ms timer resolution, or after changing into HPET)
And your forum is missing the function to upload attachments, you better find a time to fix it :)

----

7.As this picture, I found that core-parking having so many function, is that safe/can disabling using of fake-core by changing core-parking max core?
And if I can, making core-parking more smartly?  :D
----
http://msdn.microsoft.com/en-us/windows/hardware/gg566941.aspx
----
Just reading about it
QuoteThe maximum percentage of logical processors (in terms of all logical processors that are enabled on the system) that can be in the unparked state at any given time. For example, on a system with 16 logical processors, configuring the value of this setting to 50% ensures that no more than 8 logical processors are ever in the unparked state at the same time. The Core Parking algorithm is disabled if the value of this setting is not greater than the value of the Processor Performance Core Parking Minimum Cores setting
So it can be parking forever for fake-core.
Right?

8.Core-parking just making it sleep faster(going deeper C-state faster), but when I disable core-parking, it still will going C-state right?


9.What benefit I can get from memory trim?
----
As I know, I can using trim to reduce the memory used by process(not push it into page-file, is push it into Standby list)
And I tried trim Standby list(by using RAMMap), and it is pushing into page-file.
So that system is pushing the useless data(Standby list)first, then data using by process, correct?
----
And did doing this (Just push it into Standby list) making software GC(garbage collector) a "bit" faster(even it having memory lacks)?
(And the best way is restart program or waiting developers reducing it.)
Just wanna to know this is another snail oil, or I will getting a bit benefit from it.
hxxp://www.pcwintech.com/about-other software

10.Changing AdditionalCriticalWorkerThreads and AdditionalDelayedWorkerThreads to 0x10 (16), what can I get?
And reading from this, I am adding more threads for kernel to process something like DPC(And default is 1)?
hxxp://www.overclock.net/t/1254416/additionalcriticalworkerthreads
I know about that, just wanna make sure I am getting the correct information about it.
QuoteExamples are device driver I/O, the kernel itself, and other internal components.
----
http://msdn.microsoft.com/en-us/library/cc615012%28v=bts.10%29.aspx
https://www.symantec.com/business/support/index?page=content&id=HOWTO56226
----

11.Can I using this(Interrupt-Affinity Policy (IntPolicy) tool) to reduce DPC latency(by reducing swapping when disable core-parking)?
----
https://www.symantec.com/business/support/index?page=content&id=HOWTO56227#v55486214
http://msdn.microsoft.com/en-us/windows/hardware/gg463378
----

Just found another website when Google it.
hxxp://www.ryanstevens.co.uk/2011/03/18/tutorial-speed-windows-pc/
And I also found that I know mostly of it  :o
TCP/IP one is the most in my memory, as SpeedGuide have collected data on it website  :D

Going for optimize test right now (and that how I found PL)  ;)
And sorry for so~~~ many question, most of them are unsure/less answers by Google it
Thank You~ :D

Jeremy Collake

#28
Quote from: BenYeeHua on August 22, 2012, 03:31:12 PM
And hope you having a some nice days on trip ;)
It was short, but nice. Thanks. I will try to finally answer your questions now that things have calmed down a LITTLE ;).

Here we go....

Quote
7.Can I making core-parking more smartly(and disabling fake-core, EIST etc)?  :D(Because it is "some" important, so I repeat asking 2 times)

ProBalance can disable core parking when it acts. This would be a way to disable core parking during high loads. Typically you would do so via a power profile, then use Process Lasso's power profile automation to choose when core parking is active, and when it isn't.

Quote
8.When I disable core-parking, it still going C-state right?

Yes. See http://www.hardwaresecrets.com/article/611 for the full list, and further details. Your other sleep states should not be affected by disabling core parking. In other words, you are not going to be disabling any OTHER sleep state that would have otherwise been active. Do note that page is OLD and does not properly list the newer CPUs.

Quote
9.What benefit can I get from memory trim?Faster GC?and it can be using by other process?(Just pushing into Standby list, not pushing it into page-file)

Usually NONE. I put it in Process Lasso only because users wanted it so bad. I preach against it all the time. It is best to let the virtual memory manager handle this. See Bitsum on Memory Optimizer Scams for the real deal.

Quote
10.Changing AdditionalCriticalWorkerThreads and AdditionalDelayedWorkerThreads to 0x10 (16), what can I get?
Less DPC latency?

Usually there won't be an appreciable effect. However, it will vary from PC to PC, depending on the executive environment (combination of hardware, software, and user behavior). I have never known this tweak to be particularly effective and you might do more harm than good if adjusting it.

Quote
11.Can I using this(Interrupt-Affinity Policy (IntPolicy) tool) to reduce DPC latency?
(by reducing swapping when disable core-parking)

Maybe. It again depends on the executive environment. In some cases it may help. I have not experimented with tweaking the interrupt affinity policy so have no first hand experience with it. Keep in mind they don't ship Windows to behave poorly and the pages recommending tweaks for Servers are usually more for specific situations where there are performance concerns due to *unusual* executive environments (see my previous definition since this is a term I made up ;p).

Quote
12.And why the responsiveness of PL and CPU eater(when running it) will decreasing by time, but it still responsive at it should
(I found it become smooth, it was lag before, I don't know this is because it is 1ms timer resolution, or after changing into HPET)
And your forum is missing the function to upload attachments, you better find a time to fix it :)

I will adjust the forum security permissions. I generally saw no need for attachments, so had limited them. I will at least allow images though, sorry about that.

Sometimes I tweak the CPU Eater's default number of threads. Some types of CPUs can handle more threads than others. I don't want to go into great details about which CPUs, but some can handle a good number of threads running at normal priority. Other CPUs (speaking of modern CPUs manufactured this year) can't handle more than 1 per core well. As time progresses, the situation usually gets worse, because more and more critical threads become starved, leading to a cascade effect.

Quote
7.As this picture, I found that core-parking having so many function, is that safe/can disabling using of fake-core by changing core-parking max core?
And if I can, making core-parking more smartly?  :D

Yes, that is a fine way to adjust CPU core parking. It does the same thing as ParkControl, though is obviously built into Windows so perhaps a bit easier to use. Windows hides a lot of power options, a huge number of them. When enabling them, just remember that not all may be supported by your hardware. In fact, MANY of the options you enabled may not work, or even be implemented at all. That's part of why they were hidden.

Quote
http://msdn.microsoft.com/en-us/windows/hardware/gg566941.aspx

Those documents are fine guides to the use of powercfg.exe, though probably won't tell you anything you don't already know, or help much. They are more designed for enterprise deployment, where a savings in energy is the primary concern. For saving $$$ and the environment.

QuoteSo it can be parking forever for fake-core.
Right?

I don't know what you mean by forever, but the tendency is to park hyper-threaded or bulldozer pair'd cores first, yes. In the case of a true 'fake' core like a HyperThreaded core, it doesn't really save much energy though, if any, and is instead more intended to prevent core thrashing by disabling cores that aren't needed, or ones that are sub-par in performance (only offering a fraction of the performance of a physical core, or a core whose pair is free in the case of AMD Bulldozer).

Quote
8.Core-parking just making it sleep faster(going deeper C-state faster), but when I disable core-parking, it still will going C-state right?

Answered above.

Quote
9.What benefit I can get from memory trim?

Answered above, again most likely none, and probably a negative performance impact. Again, see Bitsum on Memory Optimizer Scams.

Quote
As I know, I can using trim to reduce the memory used by process(not push it into page-file, is push it into Standby list)
And I tried trim Standby list(by using RAMMap), and it is pushing into page-file.
So that system is pushing the useless data(Standby list)first, then data using by process, correct?

No, let the virtual memory manager handle this. It knows what to do with your RAM, as the page above describes. It tries to keep frequently accessed pages of virtual memory in RAM, pages out seldom accessed pages, and tries to leave room for a disk cache and launching of new applications. In NT6+ SuperFetch is a smart cache also kept in RAM by the virtual memory manager. When you muck around with the virtual memory subsystem, you screw all this up. Only in rare cases is it advantageous, and even then a penalty is later paid when the pages swapped out are referenced (called a hard page fault, which induces them to be paged back in by the virtual memory manager).

Quote
And did doing this (Just push it into Standby list) making software GC(garbage collector) a "bit" faster(even it having memory lacks)?
(And the best way is restart program or waiting developers reducing it.)

You mean Memory Leaks, and yes, it can page them out more aggressively - BUT the virtual memory manager will page them out anyway, as leaked memory is by definition not accessed again. Also, when a process closes of course all its virtual memory (leaks and all) is cleaned up. It is best to just let the virtual memory manager page out leaked memory when it actually needs to use that RAM. There is no sense in having actual free RAM, you want your RAM as full as possible. Any RAM not allocated by the virtual memory of running processes is used as a disk cache, but if you find the Resource Manager showing you that your RAM isn't even being filled with disk cache, then that means you have more RAM than you even need. In general, I do NOT recommend forcing process to page their memory out - ever. Even for processes leaking memory. Sure, by doing this you can force the leaked virtual memory to be paged out faster, but this is unnecessary as the OS will do it when it actually needs that RAM for something useful.

Quote
TCP/IP one is the most in my memory, as SpeedGuide have collected data on it website  :D

I strongly advise you not to touch TCP/IP parameters! While in some rare cases it can be helpful, it usually isn't, and those who think it is usually see a placebo effect, or coincidence. That said, there are cases where the MTU can be adjusted and it helps, but it is an exceedingly rare set of circumstances these days. It is much more likely you will slow down or otherwise screw up your network stack.

I hope this helps some ... ;). Sorry it took so long. If I missed any, let me know. A couple were duplicates I think.
Software Engineer. Bitsum LLC.

BenYeeHua

After you said that the setting of core-parking is safe to using it, I testing it by reverse the function that provide.
Force core-parking "always" park the fake-core when not using software that support 4 threads, and when not using 2 real-core 100%
And this is the answer for this
QuoteSo it can be parking forever for fake-core.
Right?
Maybe you can try this.
"Processor performance core parking max cores" set to 50%

Because I am using a laptop, so the bios cannot disable HT to testing the performance between disable/enable HT when disable core-parking.
And I wanna try to disable it by core-parking, and it work.
-----
And you missed some question, I will re ask it. ;)
1.The core-parking(ProBalance) still no working here, and it is making core-parking disable after reboot/changing PowerPlan. Only ParkControl apply real-time.

2.When disable core-parking, did windows put less threads on fake-core?
(And is Windows 8 working like this?)

3.Maybe "always" disable core-parking when gaming mode enable, CPU usage>50% for 4 core, 8 logical etc is better?
As I tested, when cpu usage is 25%, 1 thread is swapping between CPU 0,1,3, so it means performance reduce(and tested by force parking fake-core, performance increase)
That maybe why when disable core-parking when you having 4 real core, 4 fake-core, the Winrar 4 threads performance increased, 50% means using CPU 0,1,2,3,4,5,7 if I guess right, the threads is not balanced, and the thread swapping the same core most of the time.

4.If can, adding the "Processor performance core parking max cores" to ParkControl, as it can always disable fake-core when running software that support 1/2 threads, just like disable HT in bios, but more easy way as no reboot and manual required.
And some of my friends tested that, when having 4 real-core, 4 fake-core, disable HT when playing game that support 2 threads, performance increase.
But the problem is, when setting it "always" park 50% core, it will always park the fake-core or not for more than 4 real-core, 4 fake-core.

4.So why windows 7 is using TSC+HPET/LAPICs as Vista is using HPET/LAPICs as default?
As it could potentially allow for a more efficient CPU Scheduler. For power saving? Or they are no/little difference ???

6.Can auto-update showing at background and not steal the focus when software is full-screen, that annoying when gaming.

7.Did the system disable SuperFetch when having SSD as the boot-disk is a correct way? As RAM is faster than SSD.

And still waiting for this  :)
Quote2.Did Intel compiler still not supporting the new instructions(AVX, for example) for non-intel CPU?
-----
About the TCP/IP, don't worry about that, and I know the Windows 7 is doing better than Windows XP, for example, RWIN.
In fact, only changing the MTU, manual RWIN(XP only), TCP1323Opts, Host Resolution Priority(a bit only, except you are running tons of services  :P), CTCP (Compound TCP)(not sure about this, depends), ECN (Explicit Congestion Notification, RFC 3168)(useful for Wifi Network when it support), Direct Cache Access (DCA)(reduce latency, useful only for 1Gbps transfer local network, maybe reduce 0.1ms  :P)

The most useful for gaming is disable Network Throttling Index, and test first before disable Nagle's algorithm, as the function is reduce small packet sent out.
If you wanna try it without disable Nagle's algorithm, just changing TcpDelAckTicks=1, changing ACK interval timeout from 200ms to 100ms, reduce a bit also.
-----
But the simple way is, using CfosSpeed, as it will changing RWIN real-time with max 300ms delay(can be change) by priority with Layer-7 Protocol.
No need to changing thing, just install it, make sure that it calibration complete, and you are done with it.

Using software smartly, why you need manual doing that when just some clicking on it.

Jeremy Collake

Please give me some more time again (sorry). I must get caught up on work again, as last night I was mucking around securing the server and ended up in a Server Administration nightmare. I still have work to do as I'm migrating to a dedicated cloud database server. It should provide more reliable performance and allow me to downgrade the primary server, saving money in the end. I didn't intend to make the switch so fast, but really screwed things up ;p. We had a few minutes of downtime even.

Quote
1.The core-parking(ProBalance) still no working here, and it is making core-parking disable after reboot/changing PowerPlan. Only ParkControl apply real-time.

I will investigate this in today's work, I was not aware this to be the case! EDIT: I found the cause, and will be fixing it in the next minor version. EDIT2: FIXED. Note that it will actually work in some cases, but not immediately as it should in all cases. I am confident in the fix though, it was an oversight. After review and few other odds and ends I will publish the update.

More later, I promise ;). Your questions are in-depth and really take some time to answer correctly.
Software Engineer. Bitsum LLC.

Jeremy Collake

#31
I am uploading a new beta that should resolve the lack of the core parking change instantaneously applying in some cases. I still have more work to do before I go final, quite a bit of work. Translations also need updated, or manually tweaked by me pending proper updates. I will respond to the rest of your questions as soon as I take care of larger jobs, again ;).

EDIT: Do note that the governor may need be to running escalated in most NT6+ environments.
Software Engineer. Bitsum LLC.

BenYeeHua

QuoteMore later, I promise ;). Your questions are in-depth and really take some time to answer correctly.
Ok, and just because it is in-depth, so it is very hard to Google it, mostly the answers are copy from Google(so I read the same answer repeat and repeat), and it not explain correctly.
----
QuoteI will investigate this in today's work, I was not aware this to be the case! EDIT: I found the cause, and will be fixing it in the next minor version. EDIT2: FIXED. Note that it will actually work in some cases, but not immediately as it should in all cases. I am confident in the fix though, it was an oversight. After review and few other odds and ends I will publish the update.
Just testing with it(6.0.0.89 beta), it can disable core-parking, but fail to restore it back.
And did the ProBalance restore back core-parking to default when having update or other thing like restart it?
----
Just showing the parking log, it showing
ERROR - Core parking could not be changed in real time,Please run the core engine with elevated rights (in install config) to resolve this issue.
But I running it with elevated rights(and I having UAC disable), and when I using Process Explorer to checking all PL process permissions, I found one unknown acc, is that normal?What account is this?
Account Unknown(S-1-5-5-0-147376)
----
So what you wanna to do to fix this(core-parking remain disable for them), I think there are some people having this problem.
By just restore back the core-parking to default first(after update)?
----
QuoteEDIT: Do note that the governor may need be to running escalated in most NT6+ environments.
Always running escalated as I trust it. ;)
----
Just having a little problem with the function that I never using it, but maybe for other user.
When showing threads and modules tabs, I found that if you focus the process in Active processes tab, it show nothing, only focus process in All processes will start showing it.

bertie97

Quote from: bitsum.support on August 11, 2012, 06:13:14 PM
First, I do see the issue with the dialogs. I am looking into that for the next update. They may not correctly reflect the Enabled/Disabled state. 100 means disabled and 50 means enabled.
After something of a hiatus myself I am now back playing with CP.  It seems the thread has become a monster in my absence...!  ;D

Just updated to beta x.69 & am going to try some gaming with CP set to disabled & see if anything feels different.  Also need to test some video encoding I think.

Was wondering in ref to the above what does 0 represent as a value in the dialog?  Neither 1 or the other?

As I am running an ancient 1090 I don't actually have much knowledge of Bulldozer.  I looked at it briefly & thought it was less of an advance than I would have liked.  This may be unfair on my part but ... 
I really ought to take another look as the info above has piqued my curiosity.  :)

In its' current guise PL is helping me maximize the performance I'm seeing so I'm happy.  The core activity graph is now showing much more balanced access/load across the group.
I am now able to add items to profiles & assign CP state to those profiles so it's looking good.

& to continue the red herrings - I can only hope that BenYeeHua was given some Mountain Dew for 七夕èŠ,  ;)

BenYeeHua

Quote& to continue the red herrings - I can only hope that BenYeeHua was given some Mountain Dew for 七夕èŠ,
Nope, I don't have a girl friend.  :P
So I will not buying it.  8)
QuoteAlso need to test some video encoding I think.
Nope, as when you converting, the cpu usage always 100%, so it is remains all core unparking, so same performance.
Only if you having the cpu usage not over 20%, 50% etc(I need to check the default setting to check it out), then the core-parking is repeat parking, unparking, parking.....
So the performance reduced when it doing like this, and the only way is disable core-parking.
----
QuoteWas wondering in ref to the above what does 0 represent as a value in the dialog?  Neither 1 or the other?
That is the value of "Processor performance core parking min cores", if you setting it to 100, it means 100% core need unparking, 50% is 2 core unparking, 2 core parking etc.
And windows always unparking 2 core at least, so if you setting it to 0%(all core can parking), that is useless for 4 core, but useful for more than 4 core.
----
I am doing the opposite, using "Processor performance core parking max cores" to remain parking the fake-core to getting the performance when having nearly 50% usage, as HT is making the performance of single thread by adding some delay, but increasing in overall performance.
----
QuoteJust updated to beta x.69 & am going to try some gaming with CP set to disabled & see if anything feels different.
You can use the benchmark inside the game to test it.  ;)
QuoteIn its' current guise PL is helping me maximize the performance I'm seeing so I'm happy.  The core activity graph is now showing much more balanced access/load across the group.
I am now able to add items to profiles & assign CP state to those profiles so it's looking good.
Yup, so when you running game before, just changing the Power Plans, but not opening ParkControl and changing it  ;)
----
QuoteAs I am running an ancient 1090 I don't actually have much knowledge of Bulldozer.  I looked at it briefly & thought it was less of an advance than I would have liked.  This may be unfair on my part but ...
I really ought to take another look as the info above has piqued my curiosity.  :)
Bulldozer is strong in multi-threads, but weak in single-thread, and if you most of time is converting video, you can try it, because of H264 support FMA4 and other newer instruction.

Tested by my tieba friends(included me)by converting with the same source, convert setting.



bertie97

My idea to try gaming & encoding has offered a couple of new opportunities to tweak my environment.
On the game front, running background processes previously impacted the game smoothness.  Not now.  A noticeable lack in interruption was visible.
On the encoding front using a 264 codec I am seeing a higher & more constant through-put  Again allowing background processes to run without any noticeable impact.
I am not seeing any drop in general responsiveness either.  eg typing, using browser & tabbing around.

So I can conclude PL is doing what it is designed to do.  The PC is smoother & more efficient.  This 69 build is certainly one of the best yet as far as I am concerned.  8)

@BenYeeHua
You are making some assumptions about what I am doing - as PL is designed to handle multiple variables I am not just interested in
a+b=c; c-b=a etc
It is perhaps more a question of
if a then b(c) or (c)b
where variables are processes vs resources, if you see what I mean. 
The point being, running any given process with x PL settings doesn't clearly represent the nature of the softwares' task orientation.  It's more about juggling than straight hand-offs.
At least it is for me. 
I want optimal multi-tasking & PL is helping with that.  I have hitherto assumed that to be the target theatre of operation of the software.

What do your images represent? Time vs performance per CPU?



BenYeeHua

#36
Quoteif you see what I mean. 
When this is writing in Chinese  ;D
Let me thinking more by using more time.
----
QuoteTime vs performance per CPU?
Nope, is just performance per CPU(not core)
For example, i7 getting 10 average frame per second, but i3 getting 5 average frame per second, so the performance of i7 is 200% when i3 having 100%
The 100% in the graph is 8.51 average frame per second(fps)
Because it is using the same source(file) and convert setting and same H.264 version with a normal priority, so it is fair.
----
PL is changing the priority of the background processes when it start eating cpu to prevent it impacts the responsiveness of the system.
Taking some resource from the process that eating cpu and giving the resource to foreground process that you are using.
(By reducing the priority of the CPU eater to below normal)

This is just because of the NT CPU scheduler don't auto reducing the priority of a processes when it become a CPU eater and start impacts the responsiveness of the system.

Just reading more doc at this website, and you will knowing more about it  ;)

http://bitsum.com/about_probalance.php
QuoteOne reason for this is that the intended proper behavior of a Windows application is not what is seen in the real world. They are meant to do a brief burst of CPU use, then enter wait state. Instead, they often are poorly designed and end up in live-locked and other 100% CPU use situations. It is impossible for Microsoft to know for sure what application really needs that CPU and which doesn't. With a little 'market intelligence', a little logic, and some help from the user Process Lasso's ProBalance can do better -- saving your PC from a total stall or simply increasing responsiveness.

bertie97


QuoteOne reason for this is that the intended proper behavior of a Windows application is not what is seen in the real world. They are meant to do a brief burst of CPU use, then enter wait state. Instead, they often are poorly designed and end up in live-locked and other 100% CPU use situations. It is impossible for Microsoft to know for sure what application really needs that CPU and which doesn't. With a little 'market intelligence', a little logic, and some help from the user Process Lasso's ProBalance can do better -- saving your PC from a total stall or simply increasing responsiveness.

That is what I am trying to test.....  & why I am testing it.  Mission statement vs 'reality'  8)

BenYeeHua

QuoteMission statement vs 'reality'  8)
lol  ;D
Just because every computer have difference hardware, so we need to test which setting is good for us ;)

BenYeeHua

Just wanna to report that PL disable core-parking is working half of it work  :o
It can disable core-parking real-time, but it cannot restore it back to default setting.
Running it with elevated right  :)

Jeremy Collake

@BenYeeHua: There may have been a rush to final and this was missed. I'll fix it right up ASAP. The code wasn't missed, so there must be a malfunction of some sort.
Software Engineer. Bitsum LLC.

BenYeeHua

Quote from: bitsum.support on August 26, 2012, 01:59:58 PM
@BenYeeHua: There may have been a rush to final and this was missed. I'll fix it right up ASAP. The code wasn't missed, so there must be a malfunction of some sort.
Some of my mistake also, as I asking too many question, so you miss this important question as the page too long  :P
I should highlight it next time :)

Jeremy Collake

First, sorry for any lost posts. I had some server issues here. Web server administrator is one of my several full time jobs ;p.

I have been running some tests and need to ask, is there any possibility that your previous setting had cpu parking disabled? It should be reverting to the setting you had prior to ProBalance disabling CPU Parking, as opposed to enabling CPU Parking. I am not saying there is not a bug, because I have not finished evaluating it, but wanted to clarify that it does revert to the previous setting. I appreciate you reporting this in any case. I believe I will add additional information to the log to let the user know the actual state of the core parking after a change is made. This should aid both in debugging and presentation to the user.

EDIT: I believe there may indeed be something amiss with the restoration of the parking setting after exiting a ProBalance event, I continue to look into it. It *might* be caused by multiple ProBalance events overlapping one another.
Software Engineer. Bitsum LLC.

BenYeeHua

Quoteis there any possibility that your previous setting had cpu parking disabled?
Nope, everytime I test it, I use the ParkControl to check that it is 50% parking or not.
And I has tried difference power plans, still getting the same result.
It can disable core-parking, but it fail to restore it back to default one.
And ParkControl is working normal.
----
QuoteFirst, sorry for any lost posts. I had some server issues here. Web server administrator is one of my several full time jobs ;p.
That fine  :)

Jeremy Collake

Yes, there is a problem for sure. Fully fixing it requires a little more work than I anticipated - but not much. I should have it fixed soon and a new build out today or tomorrow. Very sorry for the trouble. I may also add a quick toggle for CPU Parking at some point here, and potentially also allow for ProBalance to change power profiles.
Software Engineer. Bitsum LLC.

Jeremy Collake

I have finally fixed ParkControl's inconsistencies as well. I have made a lot of fixes and improvements today. I must do some testing and code review before release, but this next build should be a good one. It cleans up my todo list quite a bit.
Software Engineer. Bitsum LLC.

BenYeeHua

Ok~
I will waiting for that
Thank  ;)

Jeremy Collake

After one mis-fire, I am testing the fixed CPU Park Control. Now available as a stand-alone download again.
Software Engineer. Bitsum LLC.

Jeremy Collake

As I do testing and code review I am issuing 6::95. Now, the big thing here is that it only changes the parking behavior on the first entrance into an active ProBalance event, or the exit of the last active ProBalance event. This is not only more optimal, but should behave right. I still have to test, so no guarantees on this build, but it will go final very quickly.
Software Engineer. Bitsum LLC.

Jeremy Collake

The .95 beta still malfunctions, but I wanted to publish it anyway for other testing. I will have it fixed in .96 for sure.
Software Engineer. Bitsum LLC.