Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Julio_Cesar_S_
Beginner
227 Views

CPU TDP

Hi,

Is there any api that provides the TDP (watts) processor?

I can't find.

Ty.

0 Kudos
6 Replies
Gael_H_Intel
Moderator
227 Views

We answer questions regarding Intel Active Management Technology (vPro) on this forum.  I do not know what SDK a TDP api would be a part of.  (Sorry..)

Julio_Cesar_S_
Beginner
227 Views

ok sorry. =(

Bernard
Black Belt
227 Views

Maybe one of the MSR registers will be helpful.

Julio_Cesar_S_
Beginner
227 Views

procedure TForm2.GetKernelPerfStateInfo;
const
WbemUser ='';
WbemPassword ='';
WbemComputer ='localhost';
wbemFlagForwardOnly = $00000020;
var
FSWbemLocator : OLEVariant;
FWMIService : OLEVariant;
FWbemObjectSet: OLEVariant;
FWbemObject : OLEVariant;
oEnum : IEnumvariant;
iValue : LongWord;
begin;
FSWbemLocator := CreateOleObject('WbemScripting.SWbemLocator');
FWMIService := FSWbemLocator.ConnectServer(WbemComputer, 'root\WMI', WbemUser, WbemPassword);
FWbemObjectSet:= FWMIService.ExecQuery('SELECT * FROM KernelPerfState','WQL',wbemFlagForwardOnly);
oEnum := IUnknown(FWbemObjectSet._NewEnum) as IEnumVariant;
while oEnum.Next(1, FWbemObject, iValue) = 0 do
begin
Label5.Caption := (Format('Power %d',[Integer(FWbemObject.Power)]));// Uint32
FWbemObject:=Unassigned;
end;
end;

Don't show tdp. Tips?

Bernard
Black Belt
227 Views

Can you access directly these MSR registers( on Ivy Bridge) 0x648 ,0x649, 0x64A?

constm
Beginner
227 Views

WMI.KernelPerfStates.Power does not exist. Don't crosspost this bullshit anymore. Just check.

WMI.KernelPerfStates.vbs :

Const wbemCimtypeDatetime  = 101    ' Date/time value

On Error Resume Next

Set d = CreateObject("WbemScripting.SWbemDateTime")
Set c = GetObject("winmgmts:\\.\root\WMI").InstancesOf("KernelPerfStates")

for each o in c

    WSH.Echo ""
    WSH.Echo "----"

for each p in o.Properties_

    if IsNull(p.Value) then
        WSH.Echo p.Name
    else
        if p.CIMType = wbemCimtypeDatetime then
            d.Value = p.Value
            WSH.Echo p.Name & " = " & d.GetVarDate()
        else
        if IsArray(p.Value) then
            WSH.Echo p.Name & " = " & Join(p.Value, ",")
        else
            WSH.Echo p.Name & " = " & p.Value
        end if
        end if
    end if
 
next

next


if Err <> 0 then
    WSH.Echo ""
    WSH.Echo "Error:", Hex(Err.Number), "-", Err.Description
    Err.Clear
end if

Reply