Resultados da pesquisa a pedido "avx"

1 a resposta

Intel SIMD - Como posso verificar se um __m256 * contém valores diferentes de zero

Estou usando o compilador Microsoft Visual Studio. Estou tentando descobrir se um vetor de 256 bits contém valores diferentes de zero. eu tenteires_simd = ! _mm256_testz_ps(*pSrc1, *pSrc1); mas não funciona.

3 a resposta

Bitmap uint8_t ideal em um vetor "bool" SIMD de 8 x 32 bits

Como parte de um algoritmo de compactação, estou procurando a maneira ideal de obter o seguinte: Eu tenho um bitmap simples em umuint8_t. Por exemplo 01010011 O que eu quero é um__m256i do formulário: (0, maxint, 0, maxint, 0, 0, ...

3 a resposta

prático BigNum AVX / SSE possível?

Os registros SSE / AVX podem ser vistos como BigNums de ponto flutuante ou inteiro. Ou seja, pode-se negligenciar a existência de pistas. Existe uma maneira fácil de explorar esse ponto de vista e usar esses registros como BigNums individualmente ...

2 a resposta

Contagem populacional mais rápida de 64 bits (peso de Hamming)

Eu tive que calcular o peso de Hamming para um fluxo contínuo muito rápido de dados de 64 bits e usando opopcnt As instruções de montagem lançam uma exceção para o meu Intel Core i7-4650U. Eu verifiquei o prazer da minha bíblia Hacker e examinei ...

2 a resposta

símbolo externo não resolvido __mm256_setr_epi64x

Escrevi e depurei algum código AVX com g ++ e agora estou tentando fazê-lo funcionar com o MSVC, mas continuo recebendo erro LNK2019: símbolo externo não resolvido __mm256_setr_epi64x referido na função "private: union __m256i __thiscall ...

1 a resposta

Diferença entre as instruções AVX vxorpd e vpxor

De acordo comGuia intrínseco da Intel [https://software.intel.com/sites/landingpage/IntrinsicsGuide/], vxorpd ymm, ymm, ymm: Calcule o XOR bit a bit dos elementos de ponto flutuante de precisão dupla compactada (64 bits) em aeb, e armazene os ...

4 a resposta

as variáveis SSE / AVX locais estáticas / estáticas estão bloqueando um registro xmm / ymm?

Ao usar intrínsecas SSE, geralmente são necessários zero vetores. Uma maneira de evitar a criação de uma variável zero dentro de uma função sempre que a função é chamada (cada vez que efetivamente chamamos alguma instrução vetorial xor) ...

2 a resposta

Largura de banda da memória L1: queda de 50% na eficiência usando endereços que diferem em 4096 + 64 bytes

Desejo obter a largura de banda máxima das seguintes operações com os processadores Intel. for(int i=0; i<n; i++) z[i] = x[i] + y[i]; //n=2048onde x, ye z são matrizes flutuantes. Estou fazendo isso nos sistemas Haswell, Ivy Bridge e ...

2 a resposta

Medindo a largura de banda da memória do produto escalar de duas matrizes

O produto escalar de duas matrizes for(int i=0; i<n; i++) { sum += x[i]*y[i]; }não reutiliza dados, portanto deve ser uma operação ligada à memória. Portanto, devo poder medir a largura de banda da memória do produto escalar. Usando o código ...

1 a resposta

A maneira mais rápida de descompactar 32 bits em um vetor SIMD de 32 bytes

Tendo 32 bits armazenados em umuint32_t na memória, qual é a maneira mais rápida de descompactar cada bit em um elemento de byte separado de um registro AVX? Os bits podem estar em qualquer posição dentro de seus respectivos bytes. Edit: para ...