LoginSignup
0
0

Daskでスレッド数を指定して計算するには

Posted at

Pythonの並列処理ライブラリであるdaskで計算処理を行うと、デフォルトでは最大コア数分のスレッドを使って計算を行います。スレッド数を変えて計算するには次の方法があります。

num_workersで指定

computeメソッドを呼び出すときにnum_workersというキーワード引数で計算の並列数を指定できます。デフォルトではスレッドを使って並列計算を行うので、これでスレッド数が指定できることになります。

import dask.array as da

z = da.random.normal(0, 1, (1000, 1000))
x = da.sum(z, axis=1)
x.compute(num_workers=2) # 2スレッドで計算

dask.configで指定

computeメソッド呼び出し時に個別にスレッド数を指定するのではなく、まとめて指定したい場合には次のようにします。

from multiprocessing.pool import ThreadPool
import dask
dask.config.set(pool=ThreadPool(20))

参考文献

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0