I want to release the GIL inside a for loop on a 3-dimensional numpy array
cdef np.ndarray[DTYPE_t,ndim=3] array=np.ones((10000000,4,2))
cdef np.ndarray[DTYPE_t,ndim=2] sliced_array
cdef int i
cdef int N=array.shape[0]
for i in range(N):
sliced_array=array[i]
#perform computations on slice
When I look at the html produced by Cython it looks like it is calling Python when it is doing sliced_array=array[i]
I guess it is because it infers the size of the two other dimensions but even when using typed ranges for the second and third axis this line is still yellow !
sliced_array=array[i,typed_slice_x,typed_slice_y]