2017-02-19 241 views

回答

0

有幾個圖書館可以幫助這種困境。

Databricks正在爲Spark提供TensorFlow解決方案,這將允許您使用羣集的GPU或您的機器。

如果您想了解更多關於此的介紹,請訪問Spark Summit Europe 2016此演示文稿將顯示TensorFrames的工作原理。

其他這是一篇關於DataBricks博客中的TensoFrames的文章。

有關更多的代碼信息,請參見Git of Tensorframes

2

這取決於你想要做什麼。如果你想用GPU分配你的計算,你不需要使用java。你可以使用帶有cuda模塊的numba的python(pyspark)。

例如,如果您希望您的工作節點在RDD的每個塊上計算操作(此處爲gpu_function),那麼可以應用此代碼。

rdd = rdd.mapPartition(gpu_function) 

有:

def gpu_function(x): 
    ... 
    input = f(x) 
    output = ... 
    gpu_cuda[grid_size,block_size](input,output) 
    return output 

和:

from numba import cuda 
@cuda.jit("(float32[:],float32[:])") 
def gpu_cuda(input,output) 
    output = g(input) 

我勸你看看在SlideShare上網址:https://fr.slideshare.net/continuumio/gpu-computing-with-apache-spark-and-python,specificly下滑34

你只需要numba和cuda驅動程序安裝在每個工作節點上。