3

cython のインライン関数で問題が発生しました

cdef inline int binary_search(np.ndarray[np.float_t,ndim=1] cumsum, double rdn):
  cdef int mi=0,ma=len(cumsum)-1,pos 
  while True:
    if ( mi > ma):
      break
    pos = (mi+ma) / 2
    if (rdn <= cumsum[pos] ):
      ma=pos-1
    else:
      mi=pos+1
  return mi-1  

ただし、次の問題が発生します。バッファのアンパックが最適化されていません。

これは多次元配列を扱うときに問題になると聞きましたが、私はそうではありません。

助けてくれてありがとう

4

0 に答える 0