Есть ли хорошая SIMD-библиотека с малой матрицей двойной точности для x86?

Я ищу библиотеку SIMD, ориентированную на небольшие (4x4) матричные операции для графики. Там много одинарной точности, но мне нужно поддерживать как одинарную, так и двойную точность.

Я просмотрел библиотеку Intel IPP MX, но я бы предпочел что-нибудь с исходным кодом. Я' m очень интересуется SSE3 + реализациями этих конкретных операций:

  1. Mat4 * Mat4
  2. Mat4 * Vec4
  3. Mat4 * Массив Mat4
  4. Mat4 * Массив Vec4
  5. Инверсия Mat4 (приятно иметь)

РЕДАКТИРОВАТЬ: Пожалуйста, не отвечайте на "преждевременную оптимизацию". Любой, кто работал с небольшими матрицами, знает, что GCC не векторизует их, а также оптимизированные вручную встроенные функции или ASM. И в данном случае это важно, иначе я бы не спрашивал.

10
задан David Heffernan 2 March 2012 в 21:36
поделиться