Advanced Vector Extension: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Etichette: Inserimento di parole incomprensibili Sequenze di caratteri ripetuti da parte di un nuovo utente o IP Modifica visuale
fix
 
(3 versioni intermedie di 2 utenti non mostrate)
Riga 1:
{{F|componenti per computer|febbraio 2013}}
 
Con il nome di '''Advanced Vector Extension''' (abbreviate in '''AVX''') viene indicato un set di istruzioni [[SIMD]] proposte e sviluppate da [[Intel]], annunciate durante l'[[Intel Developer Forum]] del [[2008]], e che segue alle [[SSE4]] grazie all'architettura di decima generazione conosciuta come [[Sandy Bridge]], successiva a [[Nehalem (hardware)|Nehalem]].
Con il nome di '''Advanced Vector Extension''' (abbreviate in '''AVX''') viene indicato un [[instruction set]] [[SIMD]] proposte e sviluppate da [[Intel]], annunciate durante l'[[Intel Developer Forum]] del [[2008]], e che segue alle [[SSE4]] grazie all'architettura di decima generazione conosciuta come [[Sandy Bridge]], successiva a [[Nehalem (hardware)|Nehalem]].
 
== Caratteristiche tecniche ==
Line 12 ⟶ 13:
Le istruzioni AVX dovrebbero consentire inoltre di accelerare i calcoli relativi alla [[crittografia|criptazione]] [[Advanced Encryption Standard|AES]].
 
== Advanced Vector Extensions 2 ==
'''Advanced Vector Extensions 2''' (AVX2), noto anche come ''Haswell New Instructions'',<ref>{{Cita web|url=https://software.intel.com/en-us/blogs/2011/06/13/haswell-new-instruction-descriptions-now-available/|titolo=Haswell New Instruction Descriptions Now Available!|cognome=Buxton|nome=Mark|editore=[[Intel]]|data=13 giugno 2011|lingua=en|accesso=16 novembre 2018}}</ref> è un'espansione del set di istruzioni AVX introdotto nella [[Haswell (hardware)|microarchitettura Haswell]] di Intel.

AVX2 apporta le seguenti aggiunte:
* espansione della maggior parte delle istruzioni SSE e AVX a 256 bit.
* manipolazione e moltiplicazione dei bit per uso generale a tre operandi
* [[Gather-scatter (indirizzamento vettoriale)|raccogliere]] il supporto, consentendo il caricamento di elementi vettoriali da posizioni di memoria non contigue
* <code>DWORD-</code> e <code>QWORD-</code> a qualsiasi permanente
* spostamenti vettoriali
 
A volte un'altra estensione che utilizza un diverso flag cpuid è considerata parte dell'AVX2; queste istruzioni sono elencate nella propria pagina e non di seguito:
* supporto [[FMA (set di istruzioni)|FMA]] a tre operandi (FMA3)
 
===Nuove istruzioni===
=== Nuove istruzioni ===
{| class="wikitable"
|-
Line 73 ⟶ 77:
| Spostare aritmeticamente a destra. Permette spostamenti variabili in cui ogni elemento viene spostato in base all'input confezionato.
|}
===CPU con AVX2===
*[[Intel]]
**[[Haswell (hardware)|Haswell]], Q2 2013
**[[Haswell (hardware)|Haswell E]], Q3 2014
**[[Broadwell (hardware)|Broadwell]], Q4 2014
**[[Broadwell (hardware)|Broadwell E]], Q3 2016
**[[Skylake]], Q3 2015
**[[Kaby Lake]], Q3 2016 (ULV mobile) / Q1 2017 (desktop/mobile)
**[[Skylake|Skylake-X]], Q2 2017
**[[Coffee Lake]], Q4 2017
**[[Cannonlake|Cannon Lake]], previsto nel 2018
**[[Cascade Lake]], previsto nel 2018
**[[Ice Lake]], previsto nel 2018
*[[Advanced Micro Devices|AMD]]
**[[Excavator]] e successivi, Q2 2015
**[[Zen (microarchitettura)|Zen]], Q1 2017
**[[Zen+]], Q2 2018
 
==Note==
<references />189 |  4B |    1178 | Apply bit flip properties                               |        65321688 |    0s          
 
    190 |  4B |    1179 | Apply Sum property. Sum(a0) = 160                       |        64166496 |    0s          
 
    190 |  4B |    1179 | Starting brute force...                                 |        64166496 |    0s          
 
    190 |  4B |    1179 | Brute force phase completed. Key found: 434d917b08bb    |               0 |    0s          
 
Checking for key reuse...
 
[Key: a0a1a2a3a4a5] -> [xxxxx]
 
[Key: b0b1b2b3b4b5] -> [xxxxx]
 
[Key: a0a1a2a3a4a5] -> [xxxxx]
 
[Key: 6d8015e13dec] -> [xxxxx]
 
[Key: a0a1a2a3a4a5] -> [xxxxx]
 
[Key: 52bae33d49b5] -> [xxxxx]
 
[Key: a0a1a2a3a4a5] -> [xxxxx]
 
[Key: 0c16c1f7dac1] -> [xxxxx]
 
[Key: a0a1a2a3a4a5] -> [xxxxx]
 
[Key: 434d917b08bb] -> [xxxxx]
 
[Key: ffffffffffff] -> [xxxxx]
 
[Key: a0a1a2a3a4a5] -> [xxxxx]
 
[Key: d3f7d3f7d3f7] -> [xxxxx]
 
[Key: 000000000000] -> [xxxxx]
 
[Key: b0b1b2b3b4b5] -> [xxxxx]
 
[Key: 4d3a99c351dd] -> [xxxxx]
 
[Key: 1a982c7e459a] -> [xxxxx]
 
[Key: aabbccddeeff] -> [xxxxx]
 
[Key: 714c5c886e97] -> [xxxxx]
 
[Key: 587ee5f9350f] -> [xxxxx]
 
[Key: a0478cc39091] -> [xxxxx]
 
[Key: 533cb6c723f6] -> [xxxxx]
 
[Key: 8fd0a4f256e9] -> [xxxxx]
 
Sector 00 - Found   Key A: a0a1a2a3a4a5 Found   Key B: b0b1b2b3b4b5
 
Sector 01 - Found   Key A: a0a1a2a3a4a5 Found   Key B: 6d8015e13dec
 
Sector 02 - Found   Key A: a0a1a2a3a4a5 Found   Key B: 52bae33d49b5
 
Sector 03 - Found   Key A: a0a1a2a3a4a5 Found   Key B: 0c16c1f7dac1
 
Sector 04 - Found   Key A: a0a1a2a3a4a5 Found   Key B: 434d917b08bb
 
We have all sectors encrypted with the default keys..
 
Auth with all sectors succeeded, dumping keys to a file!
 
Block 18, type A, key a0a1a2a3a4a5 :fd  01  0c  fe  0e  f4  f8  05  00  00  00  00  4d  49  43  00  
 
Block 17, type B, key 434d917b08bb :dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  
 
Block 16, type B, key 434d917b08bb :dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  
 
Block 15, type A, key a0a1a2a3a4a5 :00  00  00  00  00  00  0f  00  ff  d8  00  00  00  00  00  00  
 
Block 14, type B, key 0c16c1f7dac1 :dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  
 
Block 13, type B, key 0c16c1f7dac1 :dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  
 
Block 12, type B, key 0c16c1f7dac1 :dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  dd  
 
Block 11, type A, key a0a1a2a3a4a5 :00  00  00  00  00  00  0f  00  ff  db  00  00  00  00  00  00  
 
Block 10, type B, key 52bae33d49b5 :00  00  00  00  00  00  00  00  dd  dd  dd  dd  dd  dd  dd  dd  
 
Block 09, type B, key 52bae33d49b5 :00  00  00  02  00  00  00  00  00  00  00  00  00  00  00  00  
 
Block 08, type B, key 52bae33d49b5 :00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  00  
 
Block 07, type A, key a0a1a2a3a4a5 :00  00  00  00  00  00  1e  11  ee  5a  00  00  00  00  00  00  
 
Block 06, type B, key 6d8015e13dec :00  00  00  01  6a  68  00  01  00  00  00  00  00  00  00  00  
 
Block 05, type B, key 6d8015e13dec :01  01  01  0e  02  08  08  08  00  00  00  00  00  00  00  00  
 
Block 04, type A, key a0a1a2a3a4a5 :88  05  d8  82  00  04  24  27  00  00  03  00  01  00  00  b7  
 
Block 03, type A, key a0a1a2a3a4a5 :00  00  00  00  00  00  61  e7  89  c1  00  00  00  00  00  00  
 
Block 02, type A, key a0a1a2a3a4a5 :00  05  00  05  00  05  00  05  00  05  00  05  00  05  00  05  
 
=== CPU con AVX2 ===
Block 01, type A, key a0a1a2a3a4a5 :a5  00  09  38  09  38  09  38  09  38  00  05  00  05  00  05  
* [[Intel]]
** [[Haswell (hardware)|Haswell]], Q2 2013
** [[Haswell (hardware)|Haswell E]], Q3 2014
** [[Broadwell (hardware)|Broadwell]], Q4 2014
** [[Broadwell (hardware)|Broadwell E]], Q3 2016
** [[Skylake]], Q3 2015
** [[Kaby Lake]], Q3 2016 (ULV mobile) / Q1 2017 (desktop/mobile)
** [[Skylake|Skylake-X]], Q2 2017
** [[Coffee Lake]], Q4 2017
** [[Cannonlake|Cannon Lake]], previsto nel 2018
** [[Cascade Lake]], previsto nel 2018
** [[Ice Lake]], previsto nel 2018
* [[Advanced Micro Devices|AMD]]
** [[Excavator]] e successivi, Q2 2015
** [[Zen (microarchitettura)|Zen]], Q1 2017
** [[Zen+]], Q2 2018
 
== Note ==
Block 00, type A, key a0a1a2a3a4a5 :5b  98  9d  c8  96  89  04  00  c2  12  00  00  00  00  00  14  
<references />
 
== Voci correlate ==
Line 210 ⟶ 109:
{{Portale|Informatica}}
 
[[Categoria:MicroprocessoreIstruzioni x86]]
[[Categoria:Calcolo parallelo]]
[[Categoria:Intel]]