问题标签 [numba-pro]

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 投票
1 回答
181 浏览

python - 1 维 fftconvolve 与 numbapro cuda

我一直在关注一个示例(https://github.com/ContinuumIO/numbapro-examples/blob/master/convolution/fftconvolve.py),用图像和内核进行fftconvolve,它们都是二维数组。在我的用例中,我想对两个一维数组进行 fftconvolve 以寻找可能的匹配和延迟。我试图将示例转换为 1D,但收到了一些Invalid type combination错误。对于通过 numbapro 使用 CUDA 的一维数组 fftconvolve 是否有更好的示例?谢谢

0 投票
1 回答
2077 浏览

python - 为什么我不能用 numba (cuda python) 得到正确的一维数组的总和?

我尝试将 cuda python 与 numba 一起使用。代码是如下计算一维数组的总和,但我不知道如何得到一个值结果而不是三个值。

python3.5 与 numba + CUDA8.0

输出是:

为什么我不能得到输出 "4.31417383" 而不是 "1.733004 1.289852 1.291317" ?1.733004+1.289852+1.291317=4.314173。

我是 numba 的新手,阅读 numba 文档,但不知道该怎么做。有人可以给建议吗?

0 投票
1 回答
65 浏览

python - 无法正确打印两个值(python3.5+numba+CUDA8.0)

有一个数组,我会在 GPU 中用它做一些计算。

在我计算之前,我应该得到这个数组的子集。

当我打印子集时,发现两个值不正确。

代码如下:

输出是:

太奇怪了。

宜宜Yi 2.834707 2.942902 3.294948 2.868170 2.975180 3.066900 2.712719 2.835360 2.607334

但它被打印出来了Yi 2.834707 2.942902 3.294948 2.868170 2.975180 3.066900 2.712719 0.000000 18949972373983835000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000.000000

有两个值错误。

我不知道为什么会这样。有什么我忽略的吗?

0 投票
1 回答
112 浏览

python - 在 GPU 上计算时得到错误的结果(python3.5+numba+CUDA8.0)

我想得到一个数组不同部分的总和。我运行我的代码。并从打印的内容中找出两个问题。

亲1:

这里详细介绍。已经解决了。也许这不是一个真正的问题。

亲2:

在我的代码中,我给 sbuf[0,2], sbuf[1,2], sbuf[2,2] 和 sbuf[0,3], sbuf[1,3], sbuf[2,3] 赋予了不同的值.

但是发现cuda.syncthreads()sbuf[0,2] 和 sbuf[0,3]、sbuf[1,2] 和 sbuf[1,3]、sbuf[2,2] 和 sbuf[2,3] 之后的值相同]。

直接导致Xi_s、Xi1_s、Yi_s的取值错误。

这些是我根据内核中打印的内容的猜测。

@talonmies 说像这样依赖内核中的打印语句是危险的。

所以我想知道它是否有一种有用的方法来调试我的代码,而不是在内核中打印语句。

0 投票
1 回答
651 浏览

python - GPU如何计算对数(python3.5+numba+CUDA8.0)

我使用 math.log 在 GPU 中计算了对数,这是CUDA Python 中支持的 Python 功能之一。但是失败了。

我的代码:

错误报告:

这是打字错误?我该如何纠正它?

我用 CUDA 模拟器运行这些代码(这里详细显示),它没有错误。为什么?

0 投票
1 回答
2805 浏览

python - 一个 CUDA 错误 当一个大数组被用作输入数据时

我有一个代码可以通过 python3.5 使用 numba 和 CUDA8.0 在 GPU 中进行一些计算。当输入一个 size(50,27) 的数组时,它运行成功并得到正确的结果。我将输入数据更改为 size(200,340),它有一个错误。

我在我的代码中使用共享内存。是否没有足够的共享内存?还是网格大小和块大小不好?我不知道如何识别它并为网格和块选择合适的大小。

我设置了小网格大小和块大小,错误是一样的。

我应该怎么做才能解决这个问题?感谢您的一些建议。

我简化了我的代码,它有同样的错误。在这里设置输入数据的大小很方便:df = np.random.random_sample((300, 200)) + 10.

编码:

错误:

我的设备信息:

0 投票
1 回答
1175 浏览

python-3.x - 在 cuda 中用 python 计算矩阵向量乘法

我正在尝试使用 numbapro 在下面编写一个简单的矩阵向量乘法:

但是当我开始运行时,函数 **cu_matrix_vector ** 参数 2: 错误类型出现错误

cu_matrix_vector[(m+511)/512, 512](dA, dB, dC) 文件“C:\Anaconda3\lib\site-packages\numba\cuda\compiler.py”,第 359 行,调用 sharedmem=self。 sharedmem)文件“C:\Anaconda3\lib\site-packages\numba\cuda\compiler.py”,第 433 行,_kernel_call cu_func(*kernelargs) 文件“C:\Anaconda3\lib\site-packages\numba\cuda \cudadrv\driver.py",第 1116 行,调用 self.sharedmem,streamhandle,args) 文件 "C:\Anaconda3\lib\site-packages\numba\cuda\cudadrv\driver.py",第 1160 行,在 launch_kernel无)文件“C:\Anaconda3\lib\site-packages\numba\cuda\cudadrv\driver.py”,第 221 行,在 safe_cuda_api_call retcode = libfn(*args) ctypes.ArgumentError: argument 2: : wrong type

0 投票
1 回答
4541 浏览

python - 使用 numba 在 GPU 上运行 Python

我试图在我的 NVIDIA GPU 中运行 python 代码,谷歌搜索似乎告诉我 numbapro 是我正在寻找的模块。但是,据此 numbapro 不再继续,而是已移至 numba 库。我尝试了 numba ,它的@jit装饰器似乎确实大大加快了我的一些代码的速度。但是,随着我对它的阅读更多,在我看来,它jit只是在运行时编译您的代码,并且这样做,它做了一些重度优化,因此加快了速度。

jit似乎并没有加速已经优化的 numpy 操作,例如numpy.dotetc. ,这一事实进一步强化了这一点。

我在这里感到困惑并偏离了轨道吗?具体是jit做什么的?如果它不能让我的代码在 GPU 上运行,我还能怎么做呢?

0 投票
2 回答
14830 浏览

python - PyCUDA 和 NumbaPro CUDA Python 有什么区别?

我是 CUDA 的新手,我想弄清楚PyCUDA(免费)还是NumbaPro CUDA Python(非免费)对我来说会更好(假设库成本不是问题)。

两者似乎都要求您使用它们各自的 Python 方言。但是,PyCUDA 似乎需要您在C代码中编写内核函数,这比使用 NumbaPro 更麻烦,NumbaPro 似乎为您完成了所有艰苦的工作。

真的是这样吗?会有显着的性能差异吗?

0 投票
1 回答
59 浏览

amazon-web-services - 中止 AWS 操作/使用 numbapro 安装 Anaconda

两部分问题,非常感谢任何一方的帮助。我正在尝试在 AWS EB 上安装 Anaconda,然后安装 numbapro。我在 .ebextensions 中的 options.config 如下所示:

每当我尝试部署它时,我都会遇到超时,当我尝试从控制台手动停止当前进程时,我会收到一条错误消息,指出环境未处于可以中止当前操作或查看任何日志文件的状态。