arrayfire / arrayfire/arrayfire-python

Small bug in info_str if selected device number is >= 1

オープン
#266 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Python
スター
422
フォーク
63
PR マージ指標
30日以内にマージされた PR はありません

説明

If the currently selected device number is 1 or greater, info_str will display incorrect information for the selected device. This is due to this conditional in device.py: https://github.com/arrayfire/arrayfire-python/blob/master/arrayfire/device.py#L108. That is, the previous device is used for the device information. An easy fix should be to simply omit the conditional.

However, the info_str seems to also show wrong devices after the platform has changed (though it could be related to something else too). For example when device number 1 is selected:
ArrayFire v3.9.0 (OpenCL 64bit)
-0- AMD Accelerated Parallel Processing: gfx1036 (Compute 2.0)
[1] AMD Accelerated Parallel Processing: gfx1036 (Compute 2.0)
-2- AMD Accelerated Parallel Processing: gfx1036 (Compute 2.0)
-3- Intel(R) OpenCL: AMD_Ryzen_5_7600X_6-Core_Processor (Compute 2.1)

With device number 3:
ArrayFire v3.9.0 (OpenCL 64bit)
-0- AMD Accelerated Parallel Processing: gfx1036 (Compute 2.0)
-1- AMD Accelerated Parallel Processing: gfx1100 (Compute 2.0)
-2- AMD Accelerated Parallel Processing: gfx1036 (Compute 2.0)
[3] AMD Accelerated Parallel Processing: gfx1036 (Compute 2.0)

The correct device is used in the actual computations though.

Note that the C++ version shows:
ArrayFire v3.9.0 (OpenCL, 64-bit Windows, build b59a1ae53)
-0- AMD: gfx1036, 24568 MB
[1] AMD: gfx1100, 20464 MB
-2- INTEL: AMD Ryzen 5 7600X 6-Core Processor , 64662 MB
-3- INTEL: AMD Ryzen 5 7600X 6-Core Processor , 64662 MB

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

Start in device.py at line 108 and reproduce info_str with selected device numbers 1 and 3, including after changing platforms. Check the displayed device against the selected device and the C++ output; done means info_str reports the correct device for each selection without regressing device computations.

索引モデルが issue の本文から書いたものです。

評価

技術スタック
python
領域
hpc
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
45/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。