gpt4 book ai didi

python - Cython:对于类型化的内存 View ,我应该使用 np.float_t 而不是 double

转载 作者:太空狗 更新时间:2023-10-29 20:45:52 27 4
gpt4 key购买 nike

关于 cython 中的内存 View ,如果我正在使用 numpy float 数组?

然后我应该以同样的方式输入 cdef 吗? g.

ctypedef np.float64_t np_float_t
...

@cython.profile(False)
@cython.wraparound(False)
@cython.boundscheck(False)
cdef np_float_t mean_1d(np_float_t [:] v) nogil:
cdef unsigned int n = v.shape[0]
cdef np_float_t n_sum = 0.

cdef Py_ssize_t i
for i in range(n):
n_sum += v[i]

return n_sum / n

最佳答案

如果你查看 cython 附带的 numpy 头文件(例如,在 master 分支中,它是 __init__.pxd ),你会发现

    ctypedef double       npy_double

ctypedef npy_double     float_t

换句话说,float_t double,所以使用np.float_t应该没有什么好处.

关于python - Cython:对于类型化的内存 View ,我应该使用 np.float_t 而不是 double,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20978938/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com