问题标签 [numba]
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.
python - python函数的显式签名,参数包括二维numpy数组
我想使用@jit
或@autojit
加速我的 python 代码,在这里解释:http: //nbviewer.ipython.org/gist/harrism/f5707335f40af9463c43
然而,该页面上的示例是针对纯 python 函数的,而我的函数在一个类中,并且基于更多的搜索,看来为了使用类函数,我必须提供函数的显式签名。
我以前没有使用过签名,但我现在了解如何将它们用于具有简单参数的函数。但是我陷入了如何为二维数组等复杂参数编写它们的问题上。
下面是我需要明确签名的函数。我真的不知道该写什么@void
...
编辑
鉴于我的参数类型,我试过这个:
但出现以下错误:
编辑 2
我已将课程的开头更改为 add (object)
,所以现在看起来像这样:
但现在我收到了这个错误:
object
我不认为我有缩进错误......在添加到类之前,我对这个完全相同的代码没有任何问题。
python - 加速 Tornado 模板中的循环
是否可以使用 Cython、PyPy 或 Numba 加速模板中的循环?
我的意图是尝试循环是否可以更快地进行模板渲染。
Numba 中的一些东西可以尝试一下
如果尝试将模板作为函数传递,则会失败。
_compile_and_call assert not kws AssertionError 中的文件“C:\Python27\lib\site-packages\numba\dispatcher.py”,第 123 行;当我将模板调用为函数时抛出错误
python - 修复错误:jit 装饰器只接受一个参数,给定 4
我有以下类定义:
然后,在另一个文件中,我这样做:
但后来我得到这个错误:
我发现装饰器很混乱,直到这个错误我才意识到实现也jit
使用了装饰器!或者至少我猜是这样。
python - 从 Numba 检索生成的 LLVM
使用 Numba 编译 Python 函数后,例如:
如何检索已编译函数的生成 LLVM 代码(作为字符串)?
看起来这在 Numba 的先前版本中可以通过编译函数的 lfunc 属性使用,但这不起作用。
类似的功能似乎也以转储生成的 LLVM 程序集的形式存在(在编译期间)。然而,这似乎也不再起作用了——除非我做错了什么。无论如何,必须运行终端命令并不理想,因为我真的很喜欢 Python 中的代码,尽管我知道我可以使用子进程来做到这一点。
这是为了尝试在运行时创建 Python 代码的可移植版本,该版本将被翻译;我欢迎任何与此相关的建议。
谢谢
python - 用 numba 计算内积的正确方法
我正在尝试计算两个大矩阵的内积。numpy
尝试计算点积时似乎会创建矩阵副本,这会导致我出现一些内存问题。谷歌搜索后,我发现numba
包裹很有希望。但是我不能让它正常工作。这是我的代码:
具有以下运行时间:
谁能告诉我我在这里缺少什么?
python - 每当我尝试在我的类方法上使用 @jit 时,我都会收到 IndentationError: unexpected indent
我已经尝试了几天来@jit
加快我的代码速度。最后我遇到了这个,描述添加@jit
到对象方法:
http ://williamjshipman.wordpress.com/2013/12/24/learning-python-eight-ways-to-filter-an-image
我有一个名为的类GentleBoostC
,我想加快其中名为train
.
train
接受三个参数(一个二维数组、一个一维数组和一个整数),并且不返回任何内容。
这就是我在代码中的内容:
但我不断收到缩进错误,指向定义 train 函数的行。我的缩进没有任何问题。我重新缩进了我的整个代码。如果我用 注释掉该行@jit
,那么就没有问题。
这是确切的错误:
python - 将压缩迭代器分离成单个迭代器?
我的代码有两个 2D numpy 数组,z
和weights
. 我正在像这样迭代它们(同时转置它们):
这很好,直到我开始使用 Numba 来加速我的代码。使用 Numba,我收到此错误:
为了解决这个问题,我想我可以简单地这样做:
但是我还不太擅长python,所以我只想知道这是否是最好的方法?或者如果有另一种更优化的方式?
python - Cannot coerce to or from object in nopython context: Error after python
Following up from here, Numba is finally working (after weeks) on my machine, without any weird indentation errors.
I've implemented it as in the solution to the linked question.
However, I now get this string of errors from Numba, the last line being that it can't coerce to or from object in nopython context
:
What does this mean? I hope it doesn't mean I can't use objects!
Edit
I've edited all relevant code so that I'm no longer passing any objects around, and the definition now looks like this:
But I'm still getting that error, except now it's not Error:133:22
, but:
python - NotImplementedError(dtype) 使用 numba 类方法
我正在使用 numpy 1.8.x 和 numba。我有一个名为 的函数train
,它具有以下定义:
它返回一个 3D numpy 数组。
然后我有一个类,它调用这个函数,如下所示:
然后我实例化这个类并用它来训练一个对象。
但后来我得到这个错误:
这里出了什么问题?
编辑
查看文档,它说:
异常 NotImplementedError
此异常源自
RuntimeError
. 在用户定义的基类中,抽象方法在需要派生类覆盖方法时应该引发此异常。
这将如何转化为我的情况?
编辑
有关我如何调用 train 函数的更多详细信息: