numba相关内容

需要帮助矢量化代码或优化

我正在尝试通过首先对数据进行插值以制成曲面来进行双积分.我正在使用numba尝试加快此过程的速度,但这花了太长时间. 这是我的代码,其中包含用于运行位于此处和解决方案 注意到您的代码具有四重嵌套的for循环集,因此我专注于优化内部对.这是旧的代码: for i in xrange(K.shape[0]): for j in xrange(K.shape[1]): ..
发布时间:2020-05-21 21:05:27 Python

有没有什么好方法可以优化此python代码的速度?

我有以下一段代码,该代码基本上对一些数字表达式求值,并使用它对一定范围的值进行积分.当前的代码在8.6 s内运行,但是我只是在使用模拟值,而我的实际数组要大得多.特别是,我的实际大小freq_c= (3800, 101)和number_bin = (3800, 100)的大小,使以下代码的确效率低下,因为实际数组的总执行时间将接近9分钟.代码中相当慢的一部分是对k_one_third和k_two_ ..
发布时间:2020-05-18 23:31:47 Python

Python中的Numba Jit警告解释

我已经定义了以下递归数组生成器,并正在使用Numba jit尝试加快处理速度(基于 @jit("float32[:](float32,float32,intp)", nopython=False, nogil=True) def calc_func(a, b, n): res = np.empty(n, dtype="float32") res[0] = 0 for i in range(1, n ..
发布时间:2020-05-18 22:56:17 Python

使用numba在int_s数组中找到numpy.int_

我正在使用numba(0.10.2-5-gda3e2bb-dirty)来加快我的代码的速度.现在,我尝试以下操作: from numba import void, int_, double, jit import numpy as np @jit class bla(object) @void def my_fun k = np.int_(1) f = n ..
发布时间:2020-05-18 22:53:40 Python

计算Numba中的numpy数组中非零值的数量

非常简单.我正在尝试计算用Numba(njit())编译的NumPy jit中数组中非零值的数量. Numba禁止我尝试以下操作. a[a != 0].size np.count_nonzero(a) len(a[a != 0]) len(a) - len(a[a == 0]) 如果仍然有一种更快,更pythonic且优雅的方式,我不想用于循环. 对于想要查看完整代码示例的 ..
发布时间:2020-05-18 22:43:23 Python

如何在numba编译函数中使用np.empty;错误消息“所有模板均被拒绝".

当尝试在使用numba编译的函数定义中使用np.empty并打开nopython=True以确保优化键入有效时,遇到了这个奇怪的错误. 这很奇怪,因为numba声称使用前两个参数支持np.empty,而我只使用前两个参数(我认为正确吗?),所以我不知道为什么它输入不正确. @jit(nopython=True) def empty(): return np.empty(5, n ..
发布时间:2020-05-18 22:02:16 Python

为什么这个python类不能与numba jitclass一起使用?

我已经在numpy的帮助下编写了以下代码,并且希望通过numba来提高性能.我不确定为什么它不起作用,因为我已经按照numba系统设置了所有变量.我正在尝试加快此代码的速度,因为将来我将使用大型数据集. import numpy as np import math from numba import jitclass from numba import float64,int64 spe ..
发布时间:2020-05-18 21:55:13 Python

如何使用Numba在SciPy中使用任意数量的变量和参数执行多重集成?

我想使用 Numba 装饰多重积分的被积,以便 SciPy的Nquad 函数可以将其作为 LowLevelCallable 调用 强>.理想情况下,装饰器应允许Nquad的 args 参数中包含任意数量的变量和任意数量的其他参数.这基于出色的从今年早些时候开始的问答(Q& A),但扩展到具有多个变量和参数的情况. 作为一个例子,假设以下具有N个变量和K个参数的多重积分: 以下代码有效 ..
发布时间:2020-05-18 21:21:29 Python

Python快速实现3D数组的卷积/互相关

我正在研究计算3D图像的卷积(互相关).由于问题的性质,不需要基于FFT的卷积近似值(例如,scipy fftconvolve),并且“直接和"是可行的方法.图像的大小约为〜(150,150,150),最大的内核大小约为〜(40,40,40).图像是周期性的(具有周期性边界条件,或需要用同一图像填充),因为必须为一次分析进行约100次此类卷积,所以卷积函数的速度至关重要. 我已经实现并测试了 ..
发布时间:2020-05-18 21:15:42 Python

如何实现从Numba调用的C以与nquad高效集成?

我需要在python中的6D中进行数值积分.由于scipy.integrate.nquad函数运行缓慢,因此我目前正在尝试通过将被积分数定义为scipy.LowLevelCallable以及Numba来加快处理速度. 通过复制给定import numpy as np from numba import cfunc from scipy import integrate def integra ..
发布时间:2020-05-18 21:02:24 Python

比较numpy数组时出现Numba autojit错误

当我在函数中比较两个numpy数组时,我收到一条错误消息,指出只能将length-1数组转换为Python标量: from numpy.random import rand from numba import autojit @autojit def myFun(): a = rand(10,1) b = rand(10,1) idx = a > b ret ..
发布时间:2020-05-18 21:01:08 Python

numba-guvectorize仅比jit快

我试图并行化对许多独立数据集运行的蒙特卡洛模拟.我发现numba的并行guvectorize实现仅比numba jit实现快30-40%. 我找到了这些( 1 , 2 )关于Stackoverflow的可比较主题,但它们并不能真正回答我的问题.在第一种情况下,由于回退到对象模式而减慢了实现速度;在第二种情况下,原始发布者未正确使用guvectorize-这些问题均不适用于我的代码. 为 ..
发布时间:2020-05-18 21:00:13 Python