Thema: Delphi CPUID

Einzelnen Beitrag anzeigen

EarthQuaker

Registriert seit: 14. Apr 2007
Ort: Pirna
50 Beiträge
 
Delphi 7 Enterprise
 
#12

Re: CPUID

  Alt 15. Aug 2007, 10:06
Hallo... so habe es jetzt geschaft bis auf deinen fehler... also L2 und L1 Data Cache Geht ohne probleme aber bei L1 Instr Cache zeigt er mir 320 KB an und das ist irgendwie falsch habe auch von ecx nach edx gemacht zum anfragen von L1 Instr Cache aber wie gesagt zeigt er mir dann 320 KB an

Delphi-Quellcode:
Function GetL2CacheSize : String;
var
Size: Word;
Begin
 Asm
  push eax
  push ebx
  push ecx
  push edx
  mov eax,$80000006
  cpuid
  shr ecx,16
  mov Size,cx
  pop edx
  pop ecx
  pop ebx
  pop eax
 End;
Result := IntToStr(Size) + ' KB'
End;

procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption := GetL2CacheSize;
end;
Also gilt ja für L2Cache

für L1Data ist es ja dann nur:
Delphi-Quellcode:
  mov eax,$80000005
  cpuid
  shr ecx,24
und für L1 Instr sollte es ja dann meiner meinung nach:
Delphi-Quellcode:
  mov eax,$80000005
  cpuid
  shr edx,24
sein... aber da gibt er mir einen fwert von 320KB aus der rest stimmt!!
  Mit Zitat antworten Zitat