Вопрос

Есть ли общие FFT Lib доступны для работы на графическом графике, используя OpenCL? Что касается моих знаний, код образца Apple для Power-Two OpenCL FFT - единственный такой код?

Существует ли такая библиотека для невыпусковых двух изменений? Если нет, насколько легко или сложно изменять образец Apple OpenCL?

Я смотрю на приложения обработки изображений, с невыпусковыми двумя размерами преобразования, и мне придется делать целую кучу FFTS, полуприцепных FFT.

Это было полезно?

Решение

Я знаю из библиотеки FFT OPENCL, которая в настоящее время находится в разработке, но они не планируют иметь невыпущенные два размера преобразования в первом выпуске.

Можете ли вы предоставить любую информацию о вашем приложении? Это может помочь получить приоритет для этой функции, поднятой, если она может использовать много людей.

Другие советы

Попробуйте CLFFT, разработанный AMD. Он нацелен на графические карты AMD, но должен работать на NVIDIA GPU. Он может трансформировать массивы с радикс 2, 3 и 5 (и там комбинации).

https://github.com/clmathlibrariarariariariariarariariariaries/Clfft.

Доступны привязки Python

https://github.com/geggo/gpyfft.

Вы можете скачать некоторые образцы COPENCL CODE, включая FFT из Shoc Benchmark Suite.

Ноль-прокладки можно использовать для создания данных произвольной длины, подходящие для мощности двух-двух алгоритма FFT. Подумайте, если это подойдет вашему заявлению. Увеличение количества образцов уменьшает «размер шага» в выходной домене, что означает более высокое разрешение на выходное положение.

OpenMM (https://simtk.org/home/Openmm) содержит 3D FFT для OpenCL. Это может не работать для вас напрямую, поскольку он предназначен для конкретного случая: 3D FFTS, где каждое измерение достаточно мало, чтобы хранить в локальной памяти (например, сетку 100x100x100). Но это поддерживает невыпущенные размеры (Radix 2, 3, 4 и 5), поэтому вы сможете его адаптировать.

Vexcl Предоставляет реализацию FFT для OpenCL, который принимает произвольные векторные выражения в качестве ввода, позволяет использовать многомерные преобразования (любого количества измерений) и поддерживает произвольные размеры векторов. Вот связь в соответствующую часть ее README.

Посмотри на Appml-fft. библиотека. Хотя это все еще для силы двух преобразований.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top