ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
18 апреля
729122 Топик полностью
Ксения (18.01.2017 01:36, просмотров: 89) ответил Evgeny_CD на intrinsics - это хороший механизм, но он компилерозависим. Надо быть готовым перелопатить эти места при смене компилера.
Смотрите шире. Скажем в C/C++ нет циклического сдвига, а он частенько бывает нужен, или риверс битов для того же FFT. Причем, выход из таких ситуаций именно таков, как я сказала - даруют intrinsics-функции, если процессор на эти действия способен. А поскольку эти функции ненастоящие (CALL в них отсутствует), то эффективность та же, что и у ассемблера. Да вот прямо сейчас на форуме Intel народ на Xeon Psi упражняется - там как на Фортране, так и на C/C++, сделали "макросы" (а на самом деле - те же intrinsics) для всех AVX512-операций над float-регистрами. Назвали их mm512_func(...), где func - мнемоника. И все они там пишут свои программы, не дожидаясь, когда AVX512 будет поддержан компилятором. Т.е. имеем ровно ту же ситуацию - использование intrinsics-функций вместо расширения языка.