Backend choice reset inside of threads
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 30/100
- issue の種類
- バグ
- 明瞭さ
- 説明が足りない
- 活発さ
- 停滞
- 技術スタック
- python
調査の方向性
まず、報告に示されている Python threading.Thread のエントリーポイントと get_active_backend および set_backend の呼び出しを使って、動作を再現します。バックエンドの選択が thread-local または process-local として文書化されているかを確認し、子スレッドの結果を親スレッドの設定と比較します。期待される動作が文書化されるか、報告されたリセットが解決されて回帰テストでカバーされれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Inside a new thread, Arrayfire uses the default backend rather than the backend set by the parent thread:
>>> import arrayfire as af
>>> af.get_available_backends()
('cpu', 'cuda', 'opencl')
>>> af.get_active_backend()
'cuda'
>>> af.set_backend('opencl')
>>> af.get_active_backend()
'opencl'
>>> from threading import Thread
>>> Thread(target=lambda: print(af.get_active_backend())).start()
cuda
Is this expected behavior and/or documented anywhere? I would think that the active backend should be process local rather than thread local.
If it matters, here's my version info:
OS: Ubuntu 20.04
arrayfire: 3.9.0 (commit 955152b6)
arrayfire-python: 3.8.10
cuda: 11.4.0-1
ocl-icd-libopencl1: 2.2.11-1
intel-mkl: 2020.0.166-1
- 主要言語
- Python
- スター
- 422
- フォーク
- 63
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
arrayfire/arrayfire-python のほかの issue
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
arrayfire/arrayfire-python#271 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
arrayfire/arrayfire-python#270 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
arrayfire/arrayfire-python#269 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 38/100
arrayfire/arrayfire-python#268 · コメント 1 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 48/100
arrayfire/arrayfire-python#267 · コメント 1 件 · リアクション 1 件 ·
arrayfire/arrayfire-python の issue をすべて見る
似ている issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 90/100
learningequality/ricecooker#747 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
BSData/horus-heresy-3rd-edition#3171 ·
-
enhancement
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
run-llama/llama_index#23199 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
KhronosGroup/glTF-Blender-IO#2769 ·