Код на C/C++ намного медленнее, когда выполняется в OpenFX

У меня есть алгоритм сегментации, написанный на C/C++, который широко использует указатели C, чтобы получить доступ к связанным спискам структур, которые calloc'ed в начале программы.

Этот алгоритм занимает около 3 сек. работать на Ubuntu 14.04, gcc 4.8.2. Он также использует OpenCV 2.4.8.

Алгоритм предназначен для встраивания в библиотеку OpenFX, так что эта библиотека может быть добавлена ​​как плагин к программным пакетам, таким как Natron.

При выполнении в качестве плагина хоста в SUSE, gcc 4.3.2, тот же метод с теми же входами занимает 12 секунд. выполнить. Я отлаживал и не могу понять, почему это занимает так много времени, когда выполняется в OpenFX. Мое самое сильное предположение состоит в том, что OpenFX по-разному обрабатывает доступ к памяти, и это замедляет выполнение алгоритма.

Кто-нибудь может дать мне какую-нибудь подсказку? Пожалуйста, дайте мне знать, если вам нужна дополнительная информация.

0 ответов

Другие вопросы по тегам