[c++] sse, mmx, etc
в gcc автовекторизация AFAIK пока в планах.
на sparc SSE и MMX нет
лучше писать самому конечно.
на sparc SSE и MMX нет
лучше писать самому конечно.
> в коде используются всякие ФФТ, свертки и матричные операции
для этого полно готовых оптимизированных библиотек, разве нет?
для этого полно готовых оптимизированных библиотек, разве нет?
в манах гцц есть ключики касательно sse, mmx
на линуксе intel xeon
какие фишки есть у спарков?
на линуксе intel xeon
какие фишки есть у спарков?
разве да, но нам нельзя использовать внешние либы.
Думаю, круче всего сделать так: возложить на компилятор, почитать ассемблер, который он генерирует, убедится, что ничего существенно улучшить нельзя. То, что может быть сделано автоматически, должно делаться автоматически.
Есть еще icc. Он SSE генерирует. SSE2 это вообще целочисленная арифметика, тебе это надо? Сами instruction set-ы легко найти в гугле. И еще, можно вместо ifdef лучше писать if, есть такая инструкция cpuid.
> SSE2 это вообще целочисленная арифметика
сам придумал?
сам придумал?
ну, в том числе и целая
MMX - целочисленная, SSE - вещественная, SSE2 - целочисленная. Или ты под SSE2 хочешь понимать SSE+SSE2? Но что это меняет?..
> MMX - целочисленная, SSE - вещественная, SSE2 - целочисленная.
с тебя ссылка на источник
принимаются только материалы с http://www.intel.com
> Или ты под SSE2 хочешь понимать SSE+SSE2?
я под SSE2 понимаю SSE2, в котором появилаcь возможность работы с парами вещественных чисел двойной точности
с тебя ссылка на источник
принимаются только материалы с http://www.intel.com
> Или ты под SSE2 хочешь понимать SSE+SSE2?
я под SSE2 понимаю SSE2, в котором появилаcь возможность работы с парами вещественных чисел двойной точности
> разве да, но нам нельзя использовать внешние либы.
Попробуйте http://www.fftw.org/ и потом переубедите тех, кто запрещает использовать внешние либы.
Попробуйте http://www.fftw.org/ и потом переубедите тех, кто запрещает использовать внешние либы.
:Using Streaming SIMD Extensions 2 (SSE2)
SSE2, в котором появилаcь возможность работы с парами вещественных чисел двойной точности
спасибо за ссылку
ффтв давно скачал.
ффтв давно скачал.
Оставить комментарий
Maurog
дайте плиз линки на описания того, как можно ассемблеровскими вставками оптимизировать свой си-код (в общем инетересует в какие регистры и что надо запихнуть и какой командой индуцировать вызов функции из sse2)хочется при наличие sse2 (к примеру) в коде написать
#ifdef HAVE_SSE2
asm {
...
}
#endif
в коде используются всякие ФФТ, свертки и матричные операции.
дополнительно интересует:
1. сложно ли будет таким образом оптимизировать код?
2. стОит ли это делать самому или возложить это на компиляторы, добавив ключики для оптимизации сырцов (под sse2 к примеру)? используются CC (sparc gcc (linux VC6.0 (win)