0

我正在opencl中开发一个应用程序,其基本目标是在GPU平台上实现数据挖掘算法。我想使用Hadoop分布式文件系统并希望在多个节点上执行该应用程序。我正在使用MapReduce框架,并将我的基本算法分为两部分,即'Map'和'Reduce'。如何在Opencl应用程序中使用hadoop MapReuce框架?

我从来没有在Hadoop中工作过,所以我有一些问题:

  1. 我必须用Java写我的应用程序只使用Hadoop和Mapeduce框架?
  2. 我已经编写了map和opencl中的内核函数。是否可以将HDFS文件系统用于非Java GPU计算应用程序? (注:我不想用JavaCL或Aparapi)

回答

1

你可以使用Hadoop的数据流,有了它你可以写在任何语言,你想,只要映射器和减压器为您的代码可以从标准输入输出读取回信给它。为了获得灵感,您可以采取以下示例:how R is used with Hadoop Streaming

1

HDFS是一种文件系统;您可以使用任何语言的HDFS文件系统。

HDFS数据分布在多台机器上,它在处理GPU计算中的数据时具有很高的可用性。

欲了解更多信息,请参阅Hadoop Streaming

相关问题