在Jetson tk1板上将CULA密集库加载到python中

时间:2014-09-18 23:42:38

标签: python cuda ctypes nvidia cula

从这个网站(http://www.culatools.com/downloads/dense/)成功下载并安装了完整的CULA密集R18软件包到我的jetson TK1板上后,我还没有能够使用ctypes将库加载到python中。我在./bashrc中更改了LD_LIBRARY_PATH以包含包含libcula_lapack.so共享对象文件的目录:

export PATH=/usr/local/cuda-6.0/bin:$PATH
LD_LIBRARY_PATH=/usr/local/cula/lib/
export LD_LIBRARY_PATH

但是当我运行以下代码时:

import ctypes
libculac = ctypes.cdll.LoadLibrary("libcula_scalapack.so")

我收到此错误:

libcula_scalapack.so: cannot open shared object file: No such file or directory

我已经尝试将完整目录作为参数等。我还尝试了lib目录和lib64目录中的每个.so文件,以防我的文件错误。当我将文本文件放在同一目录(或任何目录)中并在LoadLibrary命令中调用它时,上述错误代码不会触发,除非我输入错误(当然会按预期触发另一条错误消息)

相比之下,我已经应用了完全相同的方法(据我所知)将cudart和npp库导入python并取得了巨大的成功。任何帮助将不胜感激,如果我遗漏了任何重要信息或我是非常密集(双关语),请通知我。谢谢!

董事会:Jetson TK1

CUDA:6.0(从https://developer.nvidia.com/jetson-tk1-support下载)

操作系统:L4T Ubuntu 14.04(来自https://developer.nvidia.com/jetson-tk1-support

语言:Python 2.7

2 个答案:

答案 0 :(得分:1)

似乎CULA库与ARM体系结构不兼容,如“参考指南”中“CULA内部使用英特尔®数学核心函数库(MKL)”所示,因此与Jetson TK1不兼容,这是一种耻辱。

答案 1 :(得分:0)

我不知道它是否意味着8个月之后,但本着记录进展的精神......我已经能够在CUDA 6.5 + Python + Theano +上运行卷积神经网络烤宽面条在Jetson TK1上成功运作,在Lasagne google小组中有更多信息:https://groups.google.com/d/msg/lasagne-users/GtcQo1dSJdo/3X5DVSkvGNUJ

所以绝对有可能在Jetson TK1上实现一个可行的CUDA实现,并且还可以执行定型练习的计算。幸运的是,NVIDIA已经发布了使用所有正确的CUDA和GPU驱动程序安装Ubuntu的说明。