Какие приложения следует переписать, чтобы использовать OpenCL?[закрыто]

StackOverflow https://stackoverflow.com/questions/1925876

Вопрос

Mac OS X 10.6 поставляется с OpenCL, но сколько приложений могли бы иметь лучшую производительность, если бы их переписали для использования OpenCL?Какие приложения следует переписать, чтобы использовать OpenCL?

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

Решение

Моя компания использует OpenCL для научных расчетов.Хотя я не являюсь частью команды разработчиков, которая его использует, я могу рассказать вам о нескольких вещах, для которых они его используют:крупномасштабная обработка данных изображений, реконструкция imagine и массовое распараллеливание ранее написанного научного кода.

По сути, OpenCL является довольно передовым.Если вы не хотите / вынуждены иметь с этим дело, лучше оставить это для тех, кто в этом нуждается.Я не пытаюсь вас обескуражить, но это нишевый продукт, предназначенный для нишевого рынка.Вам было бы лучше изучить другие области программирования в целях потенциального трудоустройства.

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

OpenCL - это не волшебная кнопка "увеличить производительность".Есть несколько предварительных условий, которые необходимо выполнить, чтобы получить прирост производительности, первое - это надлежащее аппаратное обеспечение (помогает графический процессор Tesla GPU).Что касается программного обеспечения, которое могло бы извлечь из этого выгоду, то это любое программное обеспечение, которое выполняет много параллельных вычислений.Это исключает большинство "повседневных" программ и оставляет приложения для обработки графики (средства визуализации, программы обработки изображений), приложения для обработки больших данных, где работа может быть параллельной, и научные приложения.

Обычно, если вы пишете приложение, которое может извлечь выгоду из OpenCL, вы знаете, что оно вам уже пригодится ;).

Прежде всего, вы не можете "переписать" все приложение целиком, используя OpenCL.Вам все еще нужен "нормальный" язык для графического интерфейса и т.д.

С помощью OpenCL вы можете ускорить решение задач параллельного анализа очень больших объемов данных.Большинство проблем не попадают в эту категорию.

Наиболее перспективными кандидатами являются обработка графики / видео и звука.Но подойдет любая задача, требующая одной и той же операции с очень большим набором данных.

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