arrayfire / arrayfire/arrayfire-python

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

Offen
#266 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Python
Sterne
422
Forks
63
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

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

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

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.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
hpc
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.