Примеры OpenCL с тестами - PullRequest
       24

Примеры OpenCL с тестами

5 голосов
/ 15 сентября 2009

Я ищу несколько вводных примеров для OpenCL, которые иллюстрируют типы приложений, которые могут испытывать большие (например, 50x-1000x) увеличения скорости. Cuda имеет много хороших примеров, но я не нашел то же самое для OpenCL.

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

Ответы [ 4 ]

4 голосов
/ 15 сентября 2009

Алгоритмы, которые вы описываете, не являются ни простыми, ни вводными с точки зрения программирования на GPU. Причина того, что у CUDA есть примеры в этих областях, заключается в том, что они были достаточно длинными, чтобы люди разработали эти примеры. В настоящее время нет общедоступной версии OpenCL, работающей на графических процессорах. И ATI, и NVIDIA предлагают бета-версии своих драйверов OpenCL, но ATI поддерживает только вычисления процессора, а NVIDIA требует подписания NDA, чтобы получить. Проще говоря, OpenCL существовал недостаточно долго для разработки и демонстрации таких всеобъемлющих примеров.

Тем не менее, получить доступ к драйверам NVIDIA OpenCL не сложно. Вы можете узнать, как это сделать на их форумах здесь . Я предполагаю, что дистрибутив OpenCL содержит несколько примеров программ, которые помогут вам начать работу.

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

3 голосов
/ 07 октября 2009

Вот несколько замечательных примеров в SDK от nvidia:

http://developer.nvidia.com/object/get-opencl.html

2 голосов
/ 21 октября 2011

Наша команда работает над алгоритмами и ускорением OpenCL, и мы хотели бы предложить статью

http://www.cmsoft.com.br/index.php?view=article&catid=1:latest-news&id=247:opencl-simulated-annealing

в качестве примера реализации алгоритма имитации отжига для минимизации.

0 голосов
/ 02 сентября 2011

Вы можете попробовать следующие две книги:

Программирование массивно параллельных процессоров ... Практический подход (NVIDIA) (главы 1 и 2)

Книга программирования OpenCL ... Параллельное программирование для многоядерных процессоров и графических процессоров (компоненты истории

Оба подробно описывают, почему была сделана разработка и где можно найти истинные бонусы.

Хотя не уверен насчет бенчмаркинга, мне тоже не повезло.

...