runtime error in 'bench_cg.py'

Offen
#206 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
25/100
Issue-Typ
Bug
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
python
Bereich
hpc

Rechercherichtung

Führe zunächst examples/benchmarks/bench_cg.py aus und vergleiche dessen setup_input path in Zeile 51 mit dem funktionierenden Beispiel bench_fft.py. Überprüfe das gemeldete Verhalten von af.info() und af.get_backend()/af.set_backend(), einschließlich der CUDA-Laufzeitdetails im Bericht. Als erledigt gilt die Identifizierung der Ursache des PTX-Kompilierungsfehlers und der fehlenden Gerätemetadaten oder Backend-Änderung.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Hello,
I'm getting a runtime error running the bench_cg.py example:
RuntimeError: In function std::vector cuda::compileToPTX(const char*, std::string)

Also, the af.info() seems to see the GPU device, but doesn't assign it an ID, not could detect its memory and compute capability. At the same time, the bench_fft.py seems to work.

(venv3) igu@demeter:~$ nvidia-smi
Fri Apr 19 17:45:53 2019
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 418.39       Driver Version: 418.39       CUDA Version: 10.1     |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 980     Off  | 00000000:02:00.0 Off |                  N/A |
| 30%   42C    P0    45W / 195W |      0MiB /  4040MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+
(venv3) igu@demeter:~$ export | grep LD_LILI
declare -x LD_LIBRARY_PATH=":/usr/local/cuda/lib64:/opt/arrayfire/lib64:/usr/local/cuda/nvvm/lib64"
(venv3) igu@demeter:~$ python /mnt/Simulations/IvanG/WORKSPACE/arrayfire_examples/examples/benchmarks/bench_fft.py
ArrayFire v3.6.2 (CUDA, 64-bit Linux, build dc38ef1)
Platform: CUDA Toolkit , Driver: 418.39
[] GeForce GTX 980,  MB, CUDA Compute .
Benchmark N x N 2D fft on arrayfire
Time taken for  128 x  128: 0.9280 Gflops
Time taken for  256 x  256: 174.0147 Gflops
Time taken for  512 x  512: 300.4586 Gflops
Time taken for 1024 x 1024: 298.9022 Gflops
Time taken for 2048 x 2048: 287.5326 Gflops
Time taken for 4096 x 4096: 309.7844 Gflops
Benchmark N x N 2D fft on numpy
Time taken for  128 x  128: 4.4689 Gflops
Time taken for  256 x  256: 4.8368 Gflops
Time taken for  512 x  512: 4.4340 Gflops
Time taken for 1024 x 1024: 3.8707 Gflops
(venv3) igu@demeter:~$ python /mnt/Simulations/IvanG/WORKSPACE/arrayfire_examples/examples/benchmarks/bench_cg.py
ArrayFire v3.6.2 (CUDA, 64-bit Linux, build dc38ef1)
Platform: CUDA Toolkit , Driver: 418.39
[] GeForce GTX 980,  MB, CUDA Compute .

Testing benchmark functions...
Traceback (most recent call last):
  File "/mnt/Simulations/IvanG/WORKSPACE/arrayfire_examples/examples/benchmarks/bench_cg.py", line 199, in <module>
    test()
  File "/mnt/Simulations/IvanG/WORKSPACE/arrayfire_examples/examples/benchmarks/bench_cg.py", line 141, in test
    A, b, x0 = setup_input(n=50, sparsity=7)  # dense A
  File "/mnt/Simulations/IvanG/WORKSPACE/arrayfire_examples/examples/benchmarks/bench_cg.py", line 51, in setup_input
    A = A.T + A + n*af.identity(n, n, dtype=af.Dtype.f32)
  File "/opt/venv3/lib/python3.6/site-packages/arrayfire/array.py", line 664, in T
    return transpose(self, False)
  File "/opt/venv3/lib/python3.6/site-packages/arrayfire/array.py", line 318, in transpose
    safe_call(backend.get().af_transpose(c_pointer(out.arr), a.arr, conj))
  File "/opt/venv3/lib/python3.6/site-packages/arrayfire/util.py", line 79, in safe_call
    raise RuntimeError(to_str(err_str))
RuntimeError: In function std::vector<char> cuda::compileToPTX(const char*, std::string)
In file src/backend/cuda/jit.cpp:
(venv3) igu@demeter:~$

Also, setting the backend doesn't seem to have an effect:

>>> af.get_backend()
'unified'
>>> af.set_backend('cuda')
>>> af.get_backend()
'unified'

Thank you,
Ivan

Vorherrschende Sprache
Python
Sterne
422
Forks
63
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus arrayfire/arrayfire-python

Alle Issues in arrayfire/arrayfire-python

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

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