我可以把一个Scipy函数编译成cython吗?

2024-04-18 13:00:59 发布

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

我正在使用'scipy.interpolation.RegularGridInterpolator'对6维数据网格进行插值,但对于高维网格,操作相当缓慢:

Speed test

RegularGridInterpolator是否已编译为优化的C代码?如果我创建自己的6维Cython插值器,我会看到速度提高吗

我需要使用数百万到数十亿次的插值函数,所以任何加速都会产生巨大的差异

编辑: 我发现,如果我只是将常规网格插值器插值到一个精细网格,然后使用最近的N维插值器,速度会大大加快,这与网格的大小无关:

虚线表示RGI,实线表示NNDI

NNDI vs RGI