numpy.ndarray.copy()が遅かったという話
作成しているプログラムの実行が遅かったのでcProfileを使って調べてみました.
その結果,実行時間の3分の2程度をnumpy.ndarray.copy()が占めていたので代わりの方法を書いておきます.
こんな感じのコードを
def hoge(num, array): for i in range(num): tmp = array.copy()
こうすることでかなり早くなりました.
def hoge(num, array): tmp = array.copy() for i in range(num): tmp[...] = array
オブジェクトのコピーをしなくなるから早いとかなのかな.