我在树莓派 0 上使用 numba 时遇到了一些奇怪的行为。当我使用浮点数时,我的函数返回奇怪的计算,这些计算在数学上是错误的。这是我的代码:
import numba
@numba.jit(nopython=True)
def numtesting(n):
print(n)
print(n)
numtesting(1.0)
我会期待
相反,我得到:
知道发生了什么吗?
我放弃在 Raspberry Pi Zero 上安装 numba。在 github 上找到的信息表明 numba 仅在 64 位架构上正确工作。不过,我给自己买了一台 64 位架构的 Raspberry Pi Zero 2,并成功在其上安装了 numba 0.56.4。但是,我必须使用一些解决方法,这就是我的做法:
操作系统:Raspberry Pi OS Lite(32位) 为了让llvmlite安装成功,我安装了
sudo apt install -y llvm-dev libffi-dev
为了让numpy成功运行,我安装了sudo apt-get install -y libatlas libopenjp2-7
之后我在虚拟环境中使用了pip install llvmlite==0.39.1
此时我遇到了一个问题,即安装程序冻结了为 llvmlite 构建轮子的过程。 ChatGPT 建议将 /etc/dphys-swapfile
中的 SWAP 大小增加到 1024(默认值为 100)。该参数称为 CONF_SWAPSIZE
之后我可以使用
pip install numpy==0.56.4
将 numpy 安装到我的虚拟环境中
我真的希望它能帮助别人。我花了很长时间才弄清楚这一点......