Resultados da pesquisa a pedido "avx"

2 a resposta

Classificando estruturas de 64 bits usando o AVX?

Eu tenho uma estrutura de 64 bits que representa várias partes de dados, uma das quais é um valor de ponto flutuante: struct MyStruct{ uint16_t a; uint16_t b; float f; };e eu tenho quatro dessas estruturas, digamosstd::array<MyStruct, 4> é ...

2 a resposta

As diferentes versões mmx, sse e avx são complementares ou superconjuntos?

Estou pensando em me familiarizar com as extensões x86 SIMD. Mas antes mesmo de começar, tive problemas. Não consigo encontrar uma boa visão geral sobre quais deles ainda são relevantes. A arquitetura x86 acumulou muitas extensões de matemática ...

1 a resposta

Quantos ciclos de clock custam exponenciação AVX / SSE na moderna CPU x86_64?

Quantos ciclos de clock custam exponenciação AVX / SSE na moderna CPU x86_64? Eu estou prestes:pow(x, y) = exp(y*log(x)) [https://stackoverflow.com/questions/25936031/pow-for-sse-types] I.e. faz ambosexp() elog() As instruções AVX x86_64 ...

3 a resposta

Como resolver o problema de alinhamento de 32 bytes nas operações de carregamento / armazenamento do AVX?

Estou tendo problemas de alinhamento ao usarymm registra, com alguns trechos de código que me parecem bons. Aqui está um exemplo de trabalho mínimo: #include <iostream> #include <immintrin.h> inline void ones(float *a) { __m256 out_aligned = ...

2 a resposta

Como escrever código c ++ que o compilador pode compilar com eficiência para SSE ou AVX?

Digamos que eu tenha uma função escrita em c ++ que execute multiplicações de vetores de matriz em muitos vetores. É necessário um ponteiro para a matriz de vetores a ser transformada. Estou correto ao supor que o compilador não pode otimizar ...

2 a resposta

Gere automaticamente instruções FMA no MSVC

MSVC suporta instruções AVX / AVX2 há anos e de acordo comesta postagem no blog msdn [http://blogs.msdn.com/b/vcblog/archive/2014/02/28/avx2-support-in-visual-studio-c-compiler.aspx] , ele pode gerar automaticamenteFMA (Multiplicado com ...

1 a resposta

Carregando 8 caracteres da memória em uma variável __m256, como flutuadores de precisão única compactados

Estou otimizando um algoritmo para desfoque gaussiano em uma imagem e quero substituir o uso de um buffer flutuante [8] no código abaixo por uma variável intrínseca __m256. Que série de instruções é mais adequada para esta tarefa? // unsigned ...

1 a resposta

Quais são as melhores seqüências de instruções para gerar constantes vetoriais em tempo real?

"Melhor" significa o menor número de instruções (ou o menor número de uops, se houver alguma instrução decodificada para mais de um uop). O tamanho do código da máquina em bytes é um desempatador para igual número de insn. A geração constante é, ...

2 a resposta

Os índices de bytes diferentes de zero de um registro SSE / AVX

Se o valor de um registro SSE / AVX for tal que todos os seus bytes sejam 0 ou 1, existe alguma maneira de obter com eficiência os índices de todos os elementos diferentes de zero? Por exemplo, se o valor xmm for | r0 = 0 | r1 = 1 | r2 = 0 | r3 ...

1 a resposta

A maneira mais eficiente de obter __m256 de somas horizontais de 8 fonte __m256 vetores

Eu sei somar um__m256 para obter um único valor somado. No entanto, tenho 8 vetores como Input 1: a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], ....., ....., 8: h[0], h[1], h[2], h[3], h[4], a[5], a[6], ...