所以我试着用
silx.image.sift
,它使用
pyopencl
. 在运行该软件时,我在构建opencl程序时遇到了一个问题,我将该程序与以下代码隔离,这些代码会复制错误:
import numpy as np
import pyopencl as cl
from pyopencl.clrandom import rand as clrand
context = cl.create_some_context()
queue = cl.CommandQueue(context)
clrand(queue, (50,), np.float32)
由于这段代码是最基本的,我猜这是最近安装的MacOS Mojave的一个错误。下面是每当我运行使用
脓毒症
:
File "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pyopencl/clrandom.py",
line 642, in _fill
self.get_gen_kernel(ary.dtype, distribution)
File "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pytools/__init__.py",
line 598, in wrapper
result = function(obj, *args, **kwargs)
File "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pyopencl/clrandom.py",
line 623, in get_gen_kernel
prg = cl.Program(self.context, src).build()
File "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pyopencl/__init__.py",
line 510, in build
options_bytes=options_bytes, source=self._source)
File "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pyopencl/__init__.py",
line 554, in _build_and_catch_errors
raise err
pyopencl._cl.RuntimeError: clBuildProgram failed: BUILD_PROGRAM_FAILURE - clBuildProgram failed: BUILD_PROGRAM_FAILURE -
clBuildProgram failed: BUILD_PROGRAM_FAILURE
Build on <pyopencl.Device 'Intel(R) Core(TM) i5-5257U CPU @ 2.70GHz' on 'Apple' at 0xffffffff>:
不确定这是pyopencl问题还是一般的opencl问题。我知道opencl在macos mojave中已经被弃用了,但这不应该意味着它不会工作,好吗?