Как использовать Собственный, библиотека шаблонов C++ для линейной алгебры?

У меня есть алгоритм обработки изображений, который делает из матриц, у меня есть свои собственные коды операции над матрицей (Умножение, Инверсия...) со мной. Но процессор, который я использую, является процессором ARM Cortex-A8, который имеет НЕОНОВЫЙ сопроцессор для векторизации, поскольку операции над матрицей являются идеальными случаями для операций SIMD, я попросил, чтобы компилятор (-mfpu=neon-mfloat-abi=softfp) генерировал НЕОНОВЫЕ инструкции для моего кода, но компилятору не удается сделать так, и затем я также попытался записать свой собственный НЕОН intrinsics код для Операций над матрицей, но мне было трудно очень сделать так.

Так, я думал об использовании библиотеки Eigen, которая обещает векторизацию операций над матрицей. Таким образом, я быстро загрузил Собственную библиотеку C++ и попытался использовать ее, как дали в их учебных руководствах, но, к сожалению, я получаю ошибки компиляции, когда я запускаю их примеры программы.

Кто-либо там, у кого есть опыт с помощью Собственного, какие-либо примеры, будет действительно полезен? Любезно помогите мне, как пойти об этом.

На помощь!

Спасибо


У меня есть папка Eigen в:/home/ubuntu/Documents/eigen я установил этот путь в дополнительных каталогах проекта C++ своего Eclipse. Затем я запускаю следующую программу (Пример) -

#include 

// import most common Eigen types
USING_PART_OF_NAMESPACE_EIGEN

int main(int, char *[])
{
  Matrix3f m3;
  m3 << 1, 2, 3, 4, 5, 6, 7, 8, 9;
  Matrix4f m4 = Matrix4f::Identity();
  Vector4i v4(1, 2, 3, 4);

  std::cout << "m3\n" << m3 << "\nm4:\n"
    << m4 << "\nv4:\n" << v4 << std::endl;
}

Ошибки я добираюсь -

Сборка Отладки конфигурации для проекта Test_Eigen ****

сделайте все

Создание файла:../main.cpp

Вызов: Sourcery G ++ компилятор C++

arm-none-linux-gnueabi-g ++-I/home/ubuntu/Documents/eigen-O0-g3 - Стена-c-fmessage-length=0-fcommon-MMD - MP - MF "main.d" - MT "main.d"-mcpu=cortex-a8-marm-o "main.o"

"../main.cpp"

../main.cpp:6: ошибка: ожидаемый конструктор, деструктор или преобразование типов перед 'интервалом' делают: *** [main.o] Ошибка 1

5
задан ergosys 27 September 2010 в 21:21
поделиться