Ho cercato sul web e intel Software manual. Ma non sono in grado di confermare se tutte le architetture di Intel 64 supportano fino a SSSE3 o fino a SSE4.1 o fino a SSE4.2 o AVX, ecc. In modo che sarei in grado di utilizzare le istruzioni SIMD supportate minime nel mio programma. Per favore aiuto.Tutte le architetture Intel 64 bit supportano le istruzioni SSSE3/SSE4.1/SSE4.2?
risposta
Un processore x64 nativo (AMD64 o Intel 64) ha solo il compito di supportare SSE e SSE2.
SSE3 è supportato dai processori Intel Pentium 4 ("Prescott"), AMD Athlon 64 ("revisione E"), AMD Phenom e processori successivi. Ciò significa che la maggior parte, ma non tutte, le CPU x64 in grado di supportare SSE3.
Supplementare SSE3 (SSSE3) è supportato da Intel Core 2 Duo, Intel Core i7/i5/i3, Intel Atom, AMD Bulldozer, AMD Bobcat e processori successivi.
SSE4.1 è supportato su Intel Core 2 ("Penryn"), Intel Core i7 ("Nehalem"), Intel Atom (nucleo di Silvermont), AMD Bulldozer, AMD Jaguar e processori successivi.
SSE 4.1 e SSE4.2 sono supportati su Intel Core i7 ("Nehalem"), Intel Atom (nucleo di Silvermont), AMD Bulldozer, AMD Jaguar e processori successivi.
AVX è supportato da Intel "Sandy Bridge", AMD Bulldozer, AMD Jaguar e processori successivi.
Vedere this blog series.
Una CPU con supporto nativo x64 ma nessun supporto SSE3 sarà 'di prima generazione' a 64 bit che non è supportato da Windows 8.1 x64 nativo a causa dei requisiti per CMPXCHG16b, PrefetchW e LAHF/SAHF; quindi in pratica SSE3 è molto probabile nelle nuove macchine. SSSE3 o successivo è più restrittivo a seconda di chi si sta mirando. Ad esempio, lo Valve Hardware Survey mette SSE4.1 al 77%, SSE 4.2 al 72% (qualsiasi cosa, da AMD o Intel con SSE4.1, avrà anche SSE3 e SSSE3).
I processori Celeron e Pentium di Sandy Bridge e Haswell non supportano l'AVX (o l'AVX2). Non credo che i processori Atom supportino l'AVX –
- 1. Come dovrebbe funzionare l'applicazione nelle architetture intel a 64 bit contro 32 bit?
- 2. Perché le istruzioni x86-64 sui registri a 32 bit azzerano la parte superiore del registro a 64 bit completo?
- 3. spinta sui 64 bit Intel OSX
- 4. Come implementare CRC32 sfruttando le istruzioni specifiche di Intel?
- 5. Rollback dell'intera procedura (tutte le istruzioni)
- 6. Emulazione di istruzioni Intel TSX
- 7. Operazioni su operandi a 64 bit in architetture a 32 bit?
- 8. È sempre 64 bit in entrambe le macchine a 32 e 64 bit
- 9. prestazioni a 32 bit vs 64 bit aritmetica
- 10. Dove le istruzioni SSE superano le normali istruzioni
- 11. Dove reperire tutte le versioni di x86, ovvero i manuali dell'architettura dell'insieme di istruzioni IA32
- 12. Mancano le versioni Qt per architetture mips, arm, x86
- 13. Devo usare Python 32 bit o Python 64 bit
- 14. Come ottimizzare le applicazioni .NET a 64 bit?
- 15. Le istruzioni sull'utilizzo inutilizzate riducono le prestazioni?
- 16. App Java a 64 bit: è richiesto un sistema operativo a 64 bit, JRE a 64 bit e applicazione a 64 bit?
- 17. SQL Server 2012 a 32 bit o 64 bit su computer a 64 bit?
- 18. Query per ottenere tutte le istruzioni CREATE delle tabelle MySql
- 19. Quali assemblatori attualmente supportano il set di istruzioni AVX?
- 20. Come convertire l'app xcode 32 bit nell'app xcode a 64 bit
- 21. Perché valgrind è limitato a 32 Gb su architetture a 64 bit?
- 22. 64 bit per divisione 32 bit
- 23. tutte le permutazioni di una sequenza binaria x bit lungo
- 24. Come generare tutte le combinazioni possibili stringhe n-bit?
- 25. L'aggiunta del supporto a 64 bit al codice a 32 bit esistente è difficile?
- 26. I pod sono stati rifiutati come dipendenza implicita per "libPods.a" perché le sue architetture "XXX" non contenevano tutte le architetture richieste
- 27. Quali sono le differenze confrontando PIE, codice PIC ed eseguibile su piattaforma x86 a 64 bit?
- 28. Capire le dimensioni massime dell'heap JVM - 32 bit contro 64 bit
- 29. Come utilizzare le librerie native a 32 bit su dispositivi Android a 64 bit
- 30. Installa i file a 32 bit e le impostazioni del registro a 64 bit nell'installer WiX
Penso che sia probabilmente corretto (solo per SSSE3) ma attenzione per AMD64 che in genere non ha SSSE3. –
Intel first-gen Core2 (merom/conroe del 2006) ha SSSE3. AMD PhenomII (k10) è la microarchitettura più recente per * non * avere SSE3/SSSE3. Se stai eseguendo il rilevamento della CPU in runtime per abilitare le funzioni vettoriali, potresti non preoccuparti di scrivere a mano una versione SSE2 con elementi intrinseci, magari solo un SSSE3 e una versione AVX, ad esempio. Se qualcosa in SSE4.1 è di grande aiuto per il tuo codice (ad es. Roba intera a 32 bit), potresti anche creare una versione per SSE4.1 senza AVX (per Penryn/Nehalem/Silvermont e CPU Pentium/Celeron SnB danneggiate dalla famiglia criptata (AVX disabilitato)) –