私はループ内で配列をcdefできないことを理解しています。ループの前に配列をcdefする必要があります。ループ内でループの外側で初期化した配列を設定すると、繰り返しごとにサイズが大きく変わることはありますか? A
のサイズが反復から反復に大きく異なりますcdefループ内のサイズを変更するcythonの配列ですが、メモリの問題はありますか?
cdef int i
cdef int [:] A
for i in range(100):
A = np.zeros(np.random.randint(10, 1000), dtype=np.int32)
:
はこのようなものを想像してみてください。これはどんな種類の記憶にもつながりますか?誰かが私がループを辿っている間、何がメモリ内で正確に起こっているのかを説明できますか?これに問題がある場合は、選択肢がありますか?ありがとう
私は、呼び出し元に、このループを置くことをお勧めしたいですPythonコード、そして2次元 'A'配列を使ってCython関数を呼び出すことです。 「A」を処理するときに速度を上げることに焦点を当てる。このように 'A'を作成しても、Cythonのコンパイルは利用されません。 – hpaulj