禁用numpy数组函数

2024-09-27 23:15:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个运行缓慢的python-3脚本,在分析它之后,我发现瓶颈是numpy数组函数。在阅读了一些关于它的文档(https://numpy.org/neps/nep-0018-array-function-protocol.html)之后,我们似乎可以使用环境变量禁用此功能。因此,在我的脚本中,我执行以下操作:

os.environ["NUMPY_EXPERIMENTAL_ARRAY_FUNCTION"]="0"

但是,我的分析输出(使用cProfile)仍然显示对该数组函数的调用:

   ncalls  tottime  percall  cumtime  percall filename:lineno(function)
1321842/822748 1684.424    0.001 1938.861    0.002 {built-in method numpy.core._multiarray_umath.implement_array_function}

我是否在禁用此功能方面遗漏了什么?我需要使用不同的环境变量吗?我的理解是,如果禁用此功能,则不会对数组函数进行底层调用。请让我知道,如果有其他解决办法可用于禁用此numpy功能

我正在使用python 3.6.9和numpy v 1.18.1

多谢各位


Tags: 函数文档httpsorg功能numpy脚本环境变量

热门问题