【问题标题】:Exception: Version mismatch: this is the 'cffi' package version 1.13.1,例外:版本不匹配:这是 'cffi' 软件包版本 1.13.1,
【发布时间】:2020-02-21 11:03:24
【问题描述】:

我尝试使用 CUDA 运行代码,出现此错误,系统似乎有问题

完整代码:我知道了 CUDACast #10a - Your First CUDA Python Programno module named numbapro

import numpy as np
from timeit import default_timer as timer
from numba import vectorize

@vectorize(["float32(float32, float32)"], target='cuda')


def VectorAdd(a, b):
        return a + b

def main():
    N = 32000000

    A = np.ones(N, dtype=np.float32)
    B = np.ones(N, dtype=np.float32)
    C = np.zeros(N, dtype=np.float32)

    start = timer()
    C = VectorAdd(A, B)
    vectoradd_timer = timer() - start

    print("C[:5] = " + str(C[:5]))
    print("C[-5:] = " + str(C[-5:]))

    print("VectorAdd took %f seconds" % vectoradd_timer)

if __name__ == '__main__':
    main()

输出:

例外:版本不匹配:这是“cffi”包版本 1.13.1,位于'/usr/local/lib/python2.7/dist-packages/cffi/api.pyc'。当我们导入 顶级 '_cffi_backend' 扩展模块,我们得到版本 1.5.2, 位于 '/usr/lib/python2.7/dist-packages/_cffi_backend.x86_64-linux-gnu.so'。 两个版本应该相等;检查您的安装。

可能是这个原因:

$which pip
/usr/bin/pip

【问题讨论】:

标签: python pip numba


【解决方案1】:

您必须尝试单独删除所有 cffi 软件包并安装版本1.5.2

sudo pip install cffi==1.5.2

或者您可以通过更新旧版本来确保版本一致。

sudo apt-get install python-cffi

希望对你有帮助

【讨论】:

  • 首先,非常感谢您的帮助,但我想知道问题的原因,输出 $which python /usr/bin/python 和 ~$ which easy_install /home/redhwan/.local/bin/easy_install 也是,当我升级 pip 时的另一个问题: sudo pip install --upgrade pip 它显示:成功安装 pip-19.3.1 但使用时:pip list 您使用的是 pip 版本 8.1。 1,但是版本 19.3.1 可用。您应该考虑通过“pip install --upgrade pip”进行升级,这很奇怪
  • @Redhwan 问题是'cffi'有两个不同的版本。 cffi 前端和后端都是同一个包的一部分。当我们得到不匹配时,这意味着有问题,比如 pip (不知何故)安装了某个版本的前端(纯 Python 部分)而没有重新编译后端(C 部分)。
  • 当然,你是对的,但我想知道原因,我必须在两个路径中 pip 版本(/usr/local/bin/pip 和来自 /usr/ 的 pip 19.3.1 local/lib/python2.7/dist-packages/pip (python 2.7) 和 /usr/bin/pip 和 /usr/lib/python2.7/dist-packages/pip (python 2.7) ) ,我猜这是主要原因那个 cffi 有两个版本,也许我从两个不同的路径安装了它,我现在删除了 /usr/bin/pip
  • 谢谢你的帮助,它正在工作,第一个命令给了我错误,第二个,很好,请把它从 python-cff 修改为 python-cffi,如 $ sudo apt-get install python -cffi
  • 哈哈,我知道,但我不喜欢自己改变它。真的非常感谢。
猜你喜欢
  • 2017-09-05
  • 2021-10-06
  • 1970-01-01
  • 2019-09-18
  • 2019-11-07
  • 2018-05-26
  • 2021-10-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多