teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

typoの修正

2021/12/03 06:37

投稿

Yhaya
Yhaya

スコア439

title CHANGED
File without changes
body CHANGED
@@ -144,7 +144,7 @@
144
144
  F: Fn(&Vec<f64>, &Vec<f64>, usize) -> f64,
145
145
  F: Send + Copy + 'static,
146
146
  {
147
- let thread_num = 32;
147
+ let thread_num = 16;
148
148
  let mut handles: Vec<thread::JoinHandle<()>> = Vec::new();
149
149
  let mut result: Arc<Vec<Mutex<f64>>> = Arc::new(
150
150
  vec![0.0; y.len()]

2

情報の追加

2021/12/03 06:37

投稿

Yhaya
Yhaya

スコア439

title CHANGED
File without changes
body CHANGED
@@ -210,4 +210,9 @@
210
210
 
211
211
  です。速度を計測したところ, Rustで使うように書いた `imag2real`が2桁ほど遅くなっていました。細かく時間を計測してみると `imag2real_helper` で全体の9割くらいの時間を使っていたことがわかったのですが、どこを改善すれば速くなるのかわかりません。
212
212
 
213
- よろしくお願いいたします。
213
+ よろしくお願いいたします。
214
+
215
+ ## 参考情報
216
+
217
+ Python拡張として書いたRustコード:
218
+ https://github.com/Hayashi-Yudai/pykk

1

詳細の追記

2021/12/03 06:35

投稿

Yhaya
Yhaya

スコア439

title CHANGED
File without changes
body CHANGED
@@ -204,6 +204,10 @@
204
204
  }
205
205
  ```
206
206
 
207
+ これらのコードで速度を比較してみました。比較した関数は,
207
- しかし、実際に使っみると、このコードはPythonで使うよりも2桁ほど遅くなります(2000点のデータで3秒くらいかか)。時間を計測てみると `imag2real_helper` で全体9割くらいの時間を使っていたことがわかったのですが、どこを改善すれば速くなるのかわかりません。
208
+ - pyfunctionを付けてPythonで使ように `imag2real` (一番上コード)
209
+ - Rust用に書いた `imag2real` (一番下のコード)
208
210
 
211
+ です。速度を計測したところ, Rustで使うように書いた `imag2real`が2桁ほど遅くなっていました。細かく時間を計測してみると `imag2real_helper` で全体の9割くらいの時間を使っていたことがわかったのですが、どこを改善すれば速くなるのかわかりません。
212
+
209
213
  よろしくお願いいたします。