回答編集履歴

4

2021/11/19 23:12

投稿

退会済みユーザー
test CHANGED
@@ -12,6 +12,6 @@
12
12
 
13
13
 
14
14
 
15
- いやいやそんな、CPUなんざ興味ありませんぜ。**本命はGPU**でござんす。という場合に[CUDA対応のjit](https://yutori-datascience.hatenablog.com/entry/2014/12/29/145157)を使ってください。
15
+ いやいやそんな、CPUなんざ興味ありませんぜ。**本命はGPU**でござんす。という場合に[CUDA対応のjit](https://yutori-datascience.hatenablog.com/entry/2014/12/29/145157)を使ってください。
16
16
 
17
17
  ※GPUは確かに早いですがCPU<-->GPUの**データ移動のオーバーヘッドがバカになりません**。計算対象があまりに小さいようであればCPUの方が早いこともあり得ます。また、CPU<-->GPUのデータ移動**は最小限になるように工夫が必要**(forで回すたびに都度CPU側からGPU側に移して捌いてCPUに戻すのではなく、forの外側でCPU側からGPU側に一気に引っ越して、GPU側で捌いた結果だけCPU側に戻す)です。

3

2021/11/19 23:12

投稿

退会済みユーザー
test CHANGED
@@ -13,3 +13,5 @@
13
13
 
14
14
 
15
15
  いやいやそんな、CPUなんざ興味ありませんぜ。**本命はGPU**でござんす。という場合に[はCUDA対応のjit](https://yutori-datascience.hatenablog.com/entry/2014/12/29/145157)を使ってください。
16
+
17
+ ※GPUは確かに早いですがCPU<-->GPUの**データ移動のオーバーヘッドがバカになりません**。計算対象があまりに小さいようであればCPUの方が早いこともあり得ます。また、CPU<-->GPUのデータ移動**は最小限になるように工夫が必要**(forで回すたびに都度CPU側からGPU側に移して捌いてCPUに戻すのではなく、forの外側でCPU側からGPU側に一気に引っ越して、GPU側で捌いた結果だけCPU側に戻す)です。

2

2021/11/19 23:08

投稿

退会済みユーザー
test CHANGED
@@ -9,3 +9,7 @@
9
9
  もし、`@jit`でエラーが出る場合には、`@jit(nopython=True)`に変更ください。
10
10
 
11
11
  Numpyの簡単な処理(シンプルな関数)で処理できる場合にはエラーが出ませんが、複雑な関数が使われていたりNumpyの外側の処理が挟まるとエラーが起きます。その**エラーの回避策が上のnopythonの引数**です。
12
+
13
+
14
+
15
+ いやいやそんな、CPUなんざ興味ありませんぜ。**本命はGPU**でござんす。という場合に[はCUDA対応のjit](https://yutori-datascience.hatenablog.com/entry/2014/12/29/145157)を使ってください。

1

2021/11/19 23:04

投稿

退会済みユーザー
test CHANGED
@@ -1 +1,11 @@
1
- for文の中身がnumpyの簡単な処理でできているのであれば、[from numba import jitと@jitのおまじない](https://qiita.com/gyu-don/items/9d223b007ca620e95abc)で片付く可能性があります。
1
+ for文の中身がNumpyの簡単な処理でできているのであれば、[from numba import jitと@jitのおまじない](https://qiita.com/gyu-don/items/9d223b007ca620e95abc)で片付く可能性があります。
2
+
3
+
4
+
5
+ ---
6
+
7
+
8
+
9
+ もし、`@jit`でエラーが出る場合には、`@jit(nopython=True)`に変更ください。
10
+
11
+ Numpyの簡単な処理(シンプルな関数)で処理できる場合にはエラーが出ませんが、複雑な関数が使われていたりNumpyの外側の処理が挟まるとエラーが起きます。その**エラーの回避策が上のnopythonの引数**です。