Алгоритм миграции, разработанный заказчиком, необходимо было ускорить, используя процессор и/или графическую карту. Сложность состояла в особенностях алгоритма – он не поддаётся параллелизации. Был реализован альтернативный алгоритм, архитектурно хорошо ложащийся на GPGPU вычисления. Так как оба алгоритма – и исходный, и новый, выдают приближённое решение дифференциального уравнения, разница на некоторых примерах оказалась слишком значительной для последующей обработки, в результате чего от нового алгоритма пришлось отказаться. Исходный алгоритм был частично векторизован с с использованием интринсиков и распараллелен с помощью OpenMP на более высоком, чем сам алгоритм миграции, уровне. Общее ускорение на Intel Core i5 достигло 5 раз.
Распараллеливание и ускорение алгоритма миграции
Разработано для: Amberg Technologies AG, Швейцария, Регенсдорф
Спецификация
Заказчик
Amberg Technologies AG, Швейцария, Регенсдорф
Сфера применения
геофизические исследования
Назначение
оптимизация алгоритма миграции (обработка сейсмоданных)
Тип (платформа)
Библиотека под Windows
Технологии и алгоритмы
C++, OpenMP, Intrinsics
Похожие проекты
оптимизация библиотеки обработки сейсмических сигналов
быстрое умножение блочно-разряженных матриц