Можно ли приводить числа с плавающей запятой непосредственно к __m128, если они выровнены по 16 байтам?

Безопасно/возможно/рекомендуется ли приводить числа с плавающей запятой непосредственно к __m128, если они выровнены по 16 байтам?

Я заметил, что использование _mm_load_psи _mm_store_psдля «обертывания» необработанного массива добавляет значительные накладные расходы.

О каких потенциальных подводных камнях я должен знать?

РЕДАКТИРОВАТЬ:

На самом деле нет накладных расходов при использовании инструкций загрузки и сохранения, я перепутал некоторые числа, и поэтому я получил лучшую производительность. Даже несмотря на то, что мне удалось совершить УЖАСНОЕ манипулирование необработанными адресами памяти в экземпляре __m128, когда я запускал тест, его завершение заняло В ДВА РАЗА БОЛЬШЕ без инструкции _mm_load_ps, вероятно, возвращаясь к какому-то отказоустойчивому пути кода.

14
задан Cœur 4 February 2018 в 03:53
поделиться