Utilizar as instruções do AVX desativa a otimização exp ()?

Estou escrevendo uma rede de encaminhamento de feed em VC ++ usando intrínsecas AVX. Estou invocando esse código via PInvoke em C #. Meu desempenho ao chamar uma função que calcula um loop grande, incluindo a função exp (), é ~ 1000ms para um tamanho de loops de 160M. Assim que eu ligar paraqualqueunção @ que usa intrínsecos do AVX e, posteriormente, usa exp (), meu desempenho cai para cerca de 8000 ms para a mesma operação. Observe que a função que calcula o exp () é o padrão C, e a chamada que usa os intrínsecos do AVX pode ser completamente não relacionada em termos de dados sendo processados. Algum tipo de sinalizador está sendo disparado em algum lugar no tempo de execuçã

Em outras palavras

A(); // 1000ms calculates 160M exp() 
B(); // completely unrelated but contains AVX
A(); // 8000ms

ou, curiosamente,

C(); // contains 128 bit SSE SIMD expressions
A(); // 1000ms

Estou perdido quanto ao possível mecanismo que está acontecendo aqui ou como buscar um solução. Estou em uma CPU Intel 2500K \ Win 7. Express versões do VS.

Obrigado

questionAnswers(1)

yourAnswerToTheQuestion