I'm not sure I understood what you'd like, but if I'm not wrong, here's a solution:
First of all, you have to add more CPU measures, one for each core / thread:
Code: Select all
[MeasureCPUCore1]
Measure=CPU
Processor=1
UpdateDivider=10
[MeasureCPUCore2]
Measure=CPU
Processor=2
UpdateDivider=10
... (up to 12)
(I mention, that I'd not use the
UpdateDivider=10 option on these measures, I'd leave the default
UpdateDivider=1).
Next step would be to add to each of these measures, one IfCondition:
Code: Select all
[MeasureCPUCore1]
Measure=CPU
Processor=1
IfCondition=(MeasureCPUCore1>1)
IfTrueAction=[!SetVariable Proc1 "1"]
IfFalseAction=[!SetVariable Proc1 "0"]
[MeasureCPUCore2]
Measure=CPU
Processor=2
IfCondition=(MeasureCPUCore2>1)
IfTrueAction=[!SetVariable Proc2 "1"]
IfFalseAction=[!SetVariable Proc2 "0"]
... (up to 12)
For every core, the Proc1, Proc2, ... variable will be equal with 1 if the core is active and 0 otherwise.
One calc measure determines the number of active cores:
Code: Select all
[MeasureActiveCores]
Measure=Calc
Formula=( #Proc1# + #Proc2# + #Proc3# + #Proc4# + #Proc5# + #Proc6# + #Proc7# + #Proc8# + #Proc9# + #Proc10# + #Proc11# + #Proc12# )
DynamicVariables=1
(don't forget here the
DynamicVariables=1 option, because you set the variables with the !SetVariable bang.)
Finaly you have to show this number:
Code: Select all
[MeterCPUCores]
Meter=STRING
MeterStyle=styleCenterText
MeasureName=MeasureActiveCores
X=6r
Y=15r
W=190
H=14
Text="%1/12 active cores"
I hope this is what you'd like. If not, please let me know.