Как использовать структуру Hadoop MapReuce для приложения Opencl?

Я разрабатываю приложение в opencl, основной целью которого является реализация алгоритма интеллектуального анализа данных на платформе GPU. Я хочу использовать распределенную файловую систему Hadoop и выполнять приложение на нескольких узлах. Я использую фреймворк MapReduce и разделил свой базовый алгоритм на две части: «Карта» и «Уменьшение».

Я никогда раньше не работал в Hadoop, поэтому у меня есть несколько вопросов:

  1. Должен ли я писать свое приложение на Java только для использования инфраструктуры Hadoop и Mapeduce?
  2. Я написал функции ядра для карты и уменьшения в opencl. Можно ли использовать файловую систему HDFS для приложения вычислений на графическом процессоре, отличного от java? (Примечание: я не хочу использовать JavaCL или Aparapi)

person sandeep.ganage    schedule 19.03.2013    source источник


Ответы (2)


Вы можете использовать Hadoop Streaming, с его помощью вы можете писать преобразователи и редукторы на любом языке, который вы хотите, если ваш код может читать из stdio и записывать в него. Для вдохновения вы можете взять примеры как R используется с потоковой передачей Hadoop

person alexeipab    schedule 19.03.2013

HDFS — это файловая система; вы можете использовать файловую систему HDFS с любым языком.

Данные HDFS распределяются по нескольким машинам, они очень доступны для обработки данных в вычислениях на GPU.

Для получения дополнительной информации см. Hadoop Streaming.

person Laxmikanth Samudrala    schedule 19.03.2013