问题标签 [pyopencl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2044 浏览

opencl - Opencl:GPU执行时间始终为零

我正在尝试打印 GPU 上某些功能的执行时间。但是 GPU 上的时间总是为 0。此外,当我在下面选择 CL_DEVICE_TYPE_CPU 时,它工作正常。

这工作正常,并显示非零值的执行时间,但如果我选择 CL_DEVICE_TYPE_GPU,那么它总是显示 0,不管总数。数据点和线程。请注意,在这两种情况下(CL_DEVICE_TYPE_CPU 和 CL_DEVICE_TYPE_GPU),我都以相同的方式打印执行时间。那是我的主机代码,我的内核代码在这两种情况下都是相同的(这就是 openCL !)。以下是部分代码部分:

以毫秒为单位打印时间

如果我计算 GPU 时序的方式是错误的,为什么它会在 CPU 上工作(通过更改为 CL_DEVICE_TYPE_CPU)?这里有什么问题?

编辑:

系统信息

AMD APP SDK 2.4 AMD ATI FirePro GL 3D,拥有 800 个内核

内核

0 投票
0 回答
371 浏览

arm - 使用 CPU、GPU 和 ARM CPU 的异构计算

在我的 opencl 应用程序中,我有一个控制应用程序部分、一个图形应用程序部分和一些串行应用程序部分,如下所示:

在此处输入图像描述

所有这些应用程序都是并行运行的。

到目前为止,我已经编写了在 CPU 和 GPU 上同时运行的应用程序。如上图所示,有没有一种方法可以将 ARM 与 CPU(Intel)和 GPU(ATI)并行使用?

0 投票
1 回答
1260 浏览

opencl - Opencl中的非方阵乘法

我想用 2 个非方阵 (2000,100), (100,100) 进行矩阵乘法,我尝试像 Nvidia 示例中那样使用块子矩阵,但结果错误,我在这里找到了解决方法。 CUDA 中的非方阵乘法 它使用零填充,所以我将块大小更改为 16,但这是一个错误的工作组大小,我使用 pyopencl 并且不能使用 Blas 等等。

0 投票
1 回答
845 浏览

opencl - opencl中同一设备上的多个上下文

我们可以在同一设备上拥有多个上下文吗?如果是,那么它是同时可用还是并行(在同一时间点)?

0 投票
1 回答
119 浏览

opencl - 使用 OpenCL 查找复制引擎的数量

在 OpenCL 中是否有任何 API 用于查找 GPU 中的复制引擎数量?在 cuda 中,我们可以使用asyncEngineCount.OpenCL 中的替代方法来检查这一点?

0 投票
1 回答
1730 浏览

opencl - 如何在pyOpenCL中传递向量数组

我正在将模拟移动到 pyOpenCL 中,但无法让我的数据访问工作。我正在尝试提供一维向量数组(嗯,实际上是几个,但我包含的示例只使用了一个)。

目前,几个向量被复制得很好,但是数据根本不是我提供的。

我想我以前没有在这里发过帖,所以如果格式/演示有任何错误,我们深表歉意。另外,我刚刚删除了所有模拟代码,所以我意识到这段代码目前实际上并没有做任何事情,我只是想让缓冲区正确传递。

提前致谢。

内核(kertest.py):

代码本身(gptest.py):

0 投票
5 回答
11246 浏览

ubuntu - Python LogicError: clGetPlatformIDs failed: platform not found khr

在 Ubuntu 中对 Python 程序集进行测试时出现错误:

怎么可能修复它?

0 投票
1 回答
639 浏览

python - 无法在 OSX 上导入 PyOpenCL(异常失败)

如何让 OpenCL 在 Mac OSX 上的 Python 中加载?

输出

测试脚本的源代码。(标记失败的行)

0 投票
2 回答
3354 浏览

python - 没有名为 pyopencl (Py2exe) 的模块

尝试从 Py2Exe 制作 .exe 时,我遇到了 PyOpenCL 模块的一些问题。Py2Exe 会按照应有的方式生成 .exe(此处没有“ImportError:没有名为 pyopencl 的模块”),但是当我运行 .exe 时,它​​说没有名为 pyopencl 的模块。

我正在尝试制作 Phoenix Miner 的 .exe。

我的 setup.py:

我发现有人和我有同样的问题http://bytes.com/topic/python/answers/848048-py2exe-module-error但没有解决方案。

更新:我找到了导致此错误的原因。在 pyopencl__init__中有一个名为 _find_pyopencl_include_path 的函数,它的作用是不言自明的。长话短说:imp 模块找不到 pyopencl 模块。为了解决这个问题,我注释掉了该行并将路径名设置为 pyopencls 包含目录的路径。可能不是一个好的修复。但这很容易解决。

0 投票
1 回答
4865 浏览

python - 错误:pyopencl:为特定设备创建上下文

我想在我的平台上为特定设备创建上下文。但我收到一个错误。

代码:

我得到的错误:

如果我使用,程序编译和执行没有任何错误和警告:

但是每次使用此功能执行程序时,我都必须手动选择设备类型。我可以设置以下环境变量

使用它,我将无法根据要求为可用的不同设备创建上下文。对于我创建的所有上下文,它将默认设置为设备 0。

有人可以帮我解决这个问题。

谢谢