Ich denke das wird weggelassen da SSSE3 eine erweiterung von SSE3 ist. Also kann die CPU SSSE3 kann sie automatisch auch SSE3.
Nichtsdesdotrotz ist die angabe die du bekommst falsch. Denn das Feld heisst nicht "supported instruction sets" sondern "flags". Und das SSE3 flag ist offensichtlich gesetzt.
Wie herausfinden, ob die CPU SSE5 kann?
Re: Wie herausfinden, ob die CPU SSE5 kann?
Zu mir kommen behinderte Delphine um mit mir zu schwimmen.
Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke!
Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke!

Re: Wie herausfinden, ob die CPU SSE5 kann?
In dem Beitrag von Thorium steht ja bereits "... unterstützen Intel-SIMD-Instruktionssätze ...".
Heißt dass das diese Prüfungen nur bei Intel-CPUs korrekt funktionieren?
Denn laut Debug-Ausgabe unterstützt meine CPU (AMD) nur MMX, SSE, SSE2, SSE3, kein SSSE3 oder SSE4.1 / SSE4.2.
Heißt dass das diese Prüfungen nur bei Intel-CPUs korrekt funktionieren?
Denn laut Debug-Ausgabe unterstützt meine CPU (AMD) nur MMX, SSE, SSE2, SSE3, kein SSSE3 oder SSE4.1 / SSE4.2.
Thorium hat geschrieben:Nagut hier hast du ein paar Prozeduren um die unterstützten Intel SIMD-Instruktionssätze zu ermitteln.
Der Code ist x86 und x64 kompatibel und OS-unabhängig.Code: Alles auswählen
Procedure.i IsCpuidSupported() CompilerSelect #PB_Compiler_Processor CompilerCase #PB_Processor_x86 !pushfd !pop eax !mov edx,eax !xor eax,$00200000 !push eax !popfd !pushfd !pop eax !xor eax,edx !jne IsCpuidSupported_Supported !xor eax,eax ProcedureReturn !IsCpuidSupported_Supported: !mov eax,1 ProcedureReturn CompilerCase #PB_Processor_x64 ProcedureReturn #True CompilerEndSelect EndProcedure Procedure.i IsMmxSupported() CompilerSelect #PB_Compiler_Processor CompilerCase #PB_Processor_x86 !mov eax,1 !push ebx !cpuid !pop ebx !test edx,$00800000 !jne IsMmxSupported_Supported !xor eax,eax ProcedureReturn !IsMmxSupported_Supported: !mov eax,1 ProcedureReturn CompilerCase #PB_Processor_x64 !mov rax,1 !push rbx !cpuid !pop rbx !test edx,$00800000 !jne IsMmxSupported_Supported !xor rax,rax ProcedureReturn !IsMmxSupported_Supported: !mov rax,1 ProcedureReturn CompilerEndSelect EndProcedure Procedure.i IsSseSupported() CompilerSelect #PB_Compiler_Processor CompilerCase #PB_Processor_x86 !mov eax,1 !push ebx !cpuid !pop ebx !test edx,$02000000 !jne IsSseSupported_Supported !xor eax,eax ProcedureReturn !IsSseSupported_Supported: !mov eax,1 ProcedureReturn CompilerCase #PB_Processor_x64 !mov rax,1 !push rbx !cpuid !pop rbx !test edx,$02000000 !jne IsSseSupported_Supported !xor rax,rax ProcedureReturn !IsSseSupported_Supported: !mov rax,1 ProcedureReturn CompilerEndSelect EndProcedure Procedure.i IsSse2Supported() CompilerSelect #PB_Compiler_Processor CompilerCase #PB_Processor_x86 !mov eax,1 !push ebx !cpuid !pop ebx !test edx,$04000000 !jne IsSse2Supported_Supported !xor eax,eax ProcedureReturn !IsSse2Supported_Supported: !mov eax,1 ProcedureReturn CompilerCase #PB_Processor_x64 !mov rax,1 !push rbx !cpuid !pop rbx !test edx,$04000000 !jne IsSse2Supported_Supported !xor rax,rax ProcedureReturn !IsSse2Supported_Supported: !mov rax,1 ProcedureReturn CompilerEndSelect EndProcedure Procedure.i IsSse3Supported() CompilerSelect #PB_Compiler_Processor CompilerCase #PB_Processor_x86 !mov eax,1 !push ebx !cpuid !pop ebx !test ecx,$00000001 !jne IsSse3Supported_Supported !xor eax,eax ProcedureReturn !IsSse3Supported_Supported: !mov eax,1 ProcedureReturn CompilerCase #PB_Processor_x64 !mov rax,1 !push rbx !cpuid !pop rbx !test ecx,$00000001 !jne IsSse3Supported_Supported !xor rax,rax ProcedureReturn !IsSse3Supported_Supported: !mov rax,1 ProcedureReturn CompilerEndSelect EndProcedure Procedure.i IsSsse3Supported() CompilerSelect #PB_Compiler_Processor CompilerCase #PB_Processor_x86 !mov eax,1 !push ebx !cpuid !pop ebx !test ecx,$00000200 !jne IsSsse3Supported_Supported !xor eax,eax ProcedureReturn !IsSsse3Supported_Supported: !mov eax,1 ProcedureReturn CompilerCase #PB_Processor_x64 !mov rax,1 !push rbx !cpuid !pop rbx !test ecx,$00000200 !jne IsSsse3Supported_Supported !xor rax,rax ProcedureReturn !IsSsse3Supported_Supported: !mov rax,1 ProcedureReturn CompilerEndSelect EndProcedure Procedure.i IsSse41Supported() CompilerSelect #PB_Compiler_Processor CompilerCase #PB_Processor_x86 !mov eax,1 !push ebx !cpuid !pop ebx !test ecx,$00080000 !jne IsSse41Supported_Supported !xor eax,eax ProcedureReturn !IsSse41Supported_Supported: !mov eax,1 ProcedureReturn CompilerCase #PB_Processor_x64 !mov rax,1 !push rbx !cpuid !pop rbx !test ecx,$00080000 !jne IsSse41Supported_Supported !xor rax,rax ProcedureReturn !IsSse41Supported_Supported: !mov rax,1 ProcedureReturn CompilerEndSelect EndProcedure Procedure.i IsSse42Supported() CompilerSelect #PB_Compiler_Processor CompilerCase #PB_Processor_x86 !mov eax,1 !push ebx !cpuid !pop ebx !test ecx,$00100000 !jne IsSse42Supported_Supported !xor eax,eax ProcedureReturn !IsSse42Supported_Supported: !mov eax,1 ProcedureReturn CompilerCase #PB_Processor_x64 !mov rax,1 !push rbx !cpuid !pop rbx !test ecx,$00100000 !jne IsSse42Supported_Supported !xor rax,rax ProcedureReturn !IsSse42Supported_Supported: !mov rax,1 ProcedureReturn CompilerEndSelect EndProcedure If IsCpuidSupported() = #True Debug "MMX: " + Str(IsMmxSupported()) Debug "SSE: " + Str(IsSseSupported()) Debug "SSE2: " + Str(IsSse2Supported()) Debug "SSE3: " + Str(IsSse3Supported()) Debug "SSSE3: " + Str(IsSsse3Supported()) Debug "SSE4.1: " + Str(IsSse41Supported()) Debug "SSE4.2: " + Str(IsSse42Supported()) EndIf
[Aktuelles Projekt: Core Project | Media Library (Core Project based)]
- OS: Windows 7 Ultimate x64 | PB: PureBasic 5.40 x86/x64
CPU: AMD Phenom(TM) II X4 965 BE (4x 3.4GHz @3.8GHz) | GPU: nVidia GeForce 8200 (512MB), nVidia GeForce GT 730 (4096MB)
RAM: 8GB | HDD: 250GB Samsung, 1TB Samsung
-
Andreas21
- Beiträge: 390
- Registriert: 30.08.2004 09:05
- Computerausstattung: Desktop
Windows 10 Pro x64
CPU: AMD Ryzen 5 2600 3.40 GHz
Ram: 16GB RAM
Grafik: NVIDA Geforce 1060
PB: 5.72 X86/X64 - Wohnort: Heidelberg
Re: Wie herausfinden, ob die CPU SSE5 kann?
Welchen CPU genau hast du von AMD?
Nicht alle unterstützen SSSE3.
Aus Wikipedia:
Und was SSE5 angeht.
http://de.wikipedia.org/wiki/Streaming_ ... tensions_5
Nicht alle unterstützen SSSE3.
Aus Wikipedia:
http://de.wikipedia.org/wiki/Supplement ... tensions_3CPUs mit SSSE3
Intel Atom (alle Prozessoren)
Intel Celeron (ab Prozessorkern Conroe-L)
Intel Celeron M (ab Prozessorkern Merom-1024)
alle Prozessoren der Intel-Core-2-Serie
alle Prozessoren der Intel-Core-i-Serie
Intel Pentium Dual-Core
Intel Xeon (ab Prozessorkern Woodcrest)
VIA Nano
AMD Bulldozer
AMD Fusion
http://de.wikipedia.org/wiki/Streaming_ ... tensions_4SSE4 (Streaming SIMD Extensions 4) ist eine Befehlssatzerweiterung, die bei AMD seit K10 und bei Intel seit der Penryn-Variante der Core-2-Prozessoren verwendet wird. Der zweite Teil, SSE4.2 genannt, wurde mit der Intel-Nehalem-Mikroarchitektur eingeführt.
Intel SSE4 besteht aus 54 Befehlen. Der erste Teil von 47 Befehlen erschien unter den Namen SSE4.1. Darüber hinaus erschienen noch einmal sieben Befehle als SSE4.2 ab Core i7 ab der Variante Nehalem.
AMD fügte anstelle dessen mit der K10-Architektur vier eigene Befehle hinzu und veröffentlichte diesen Instruktionssatz unter dem Namen SSE4a. Die Prozessoren der Bulldozer-Mikroarchitektur, die im Oktober 2011 veröffentlicht wurden, unterstützen zusätzlich zu SSE4a auch SSE4.1 und 4.2 vollständig. Intel-Prozessoren unterstützen im Gegenzug die SSE4a-Befehle bis heute nicht.
http://de.wikipedia.org/wiki/SSE4aCPUs mit SSE4a
AMD Phenom
AMD Opteron
AMD Athlon II
AMD Phenom II
AMD FX
AMD A-Series
Und was SSE5 angeht.
http://de.wikipedia.org/wiki/Streaming_ ... tensions_5
Windows 10 x64 Pro - PB 5.61 X64 / x32 - PB 4.6 x32
Re: Wie herausfinden, ob die CPU SSE5 kann?
AMD Athlon 64 X2 Dual Core Processor 5000+
Demnach wäre die von Thorium geschriebene Prüfung für Intel als auch für AMD CPUs möglich, sofern die CPUs das unterstützen?
Demnach wäre die von Thorium geschriebene Prüfung für Intel als auch für AMD CPUs möglich, sofern die CPUs das unterstützen?
[Aktuelles Projekt: Core Project | Media Library (Core Project based)]
- OS: Windows 7 Ultimate x64 | PB: PureBasic 5.40 x86/x64
CPU: AMD Phenom(TM) II X4 965 BE (4x 3.4GHz @3.8GHz) | GPU: nVidia GeForce 8200 (512MB), nVidia GeForce GT 730 (4096MB)
RAM: 8GB | HDD: 250GB Samsung, 1TB Samsung
Re: Wie herausfinden, ob die CPU SSE5 kann?
Ja.Autonomus hat geschrieben: Demnach wäre die von Thorium geschriebene Prüfung für Intel als auch für AMD CPUs möglich, sofern die CPUs das unterstützen?
Ich habe "Intel" geschrieben, weil die AMD-spezifischen Erweiterungen nicht abgefragt werden.
CPUID sollte bei AMD und Intel gleich sein.
Zu mir kommen behinderte Delphine um mit mir zu schwimmen.
Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke!
Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke!

Re: Wie herausfinden, ob die CPU SSE5 kann?
Danke für deine Antwort Thorium.
Gibt es irgendwo eine Liste mit allen Befehlssätze und deren Speicheradressen?
Hab den Code von Thorium mal übernommen und um 3 weitere Abfragen erweitert.
Mir fehlen aber noch einge Speicheradressen wie PAE, NX-Bit, ...
Gibt es irgendwo eine Liste mit allen Befehlssätze und deren Speicheradressen?
Hab den Code von Thorium mal übernommen und um 3 weitere Abfragen erweitert.
Mir fehlen aber noch einge Speicheradressen wie PAE, NX-Bit, ...
[Aktuelles Projekt: Core Project | Media Library (Core Project based)]
- OS: Windows 7 Ultimate x64 | PB: PureBasic 5.40 x86/x64
CPU: AMD Phenom(TM) II X4 965 BE (4x 3.4GHz @3.8GHz) | GPU: nVidia GeForce 8200 (512MB), nVidia GeForce GT 730 (4096MB)
RAM: 8GB | HDD: 250GB Samsung, 1TB Samsung
Re: Wie herausfinden, ob die CPU SSE5 kann?
Natürlich. Es gibt ein Handbuch von Intel allein zur CPUID Instruktion. Da lässt sich eigentlich alles über die CPU ermitteln.Autonomus hat geschrieben: Gibt es irgendwo eine Liste mit allen Befehlssätze und deren Speicheradressen?
Für die AMD spezifischen Sachen, muss man in die AMD-Handbücher schauen.
Das Handbuch heisst: Intel Processor Identification and the CPUID Instruction
Und kann auf der Intel Seite als PDF runtergeladen werden.
Zu mir kommen behinderte Delphine um mit mir zu schwimmen.
Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke!
Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke!

Re: Wie herausfinden, ob die CPU SSE5 kann?
Super, vielen Dank!
Habe soetwas ähnliches schon versucht über Google zu finden, woraufhin ich aber scheinbar ein lustiges "AMD User Manual" gefunden habe, was offensichtlich kein "User Manual" für die öffentlichkeit war, wie ein normales "Benutzerhandbuch".
Naja, nochmals danke für diese hilfreiche Information.
Habe soetwas ähnliches schon versucht über Google zu finden, woraufhin ich aber scheinbar ein lustiges "AMD User Manual" gefunden habe, was offensichtlich kein "User Manual" für die öffentlichkeit war, wie ein normales "Benutzerhandbuch".
Naja, nochmals danke für diese hilfreiche Information.
[Aktuelles Projekt: Core Project | Media Library (Core Project based)]
- OS: Windows 7 Ultimate x64 | PB: PureBasic 5.40 x86/x64
CPU: AMD Phenom(TM) II X4 965 BE (4x 3.4GHz @3.8GHz) | GPU: nVidia GeForce 8200 (512MB), nVidia GeForce GT 730 (4096MB)
RAM: 8GB | HDD: 250GB Samsung, 1TB Samsung