В чем SSE-инструкции превосходят обычные инструкции

Где инструкции SSE для x86 -64 (векторные инструкции )превосходят обычные инструкции. Потому что я вижу, что частые загрузки и сохранения, необходимые для выполнения инструкций SSE, сводят на нет любой выигрыш, который мы получаем благодаря векторному вычислению. Так может ли кто-нибудь дать мне пример кода SSE, где он работает лучше, чем обычный код.

Возможно, потому что я передаю каждый параметр отдельно, вот так...

__m128i a = _mm_set_epi32(pa[0], pa[1], pa[2], pa[3]);
__m128i b = _mm_set_epi32(pb[0], pb[1], pb[2], pb[3]);
__m128i res = _mm_add_epi32(a, b);

for( i = 0; i < 4; i++ )
 po[i] = res.m128i_i32[i];

Нет ли способа передать все 4 целых числа за один раз,Я имею в виду передать все 128 байт paза один раз? И сразу назначить res.m128i_i32на po?

6
задан pythonic 25 April 2012 в 10:08
поделиться