【发布时间】:2014-11-13 11:20:19
【问题描述】:
从本网站 (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
【问题讨论】:
-
你确定有 ARM 的 CULA 库吗?
-
好点,出于某种原因我没有考虑处理器兼容性。我只是在参考手册、发行说明和 API 指南中输入了“arm”和“intel”,两种表达式的唯一结果是: 参考指南 - CULA 在内部使用英特尔® 数学核心函数库 (MKL)。如需更多信息,请参阅 MKL 产品页面intel.com/software/products/mkl。发行说明- * 已更改:添加了对 Intel OpenMP 5 可再发行组件 (libiomp5) 的运行时依赖项。所以我想这意味着 CULA 与 Jetson TK1 不兼容。真是太可惜了!
标签: python cuda ctypes nvidia cula