arrayfire / arrayfire/arrayfire-python
arrayfire-python conflict with pycuda on anaconda with Linux
- Lenguaje dominante
- Python
- Estrellas
- 422
- Forks
- 63
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
Hi,
I am using anaconda on linux, I have been previously using arrayfire on windows fine. I installed latest arrayfire on the Linux OS.. The error was
```
ERROR:root:Traceback (most recent call last):
File "/home/sabih/anaconda3/lib/python3.6/site-packages/arrayfire/tests/simple/_util.py", line 32, in run
test(verbose)
File "/home/sabih/anaconda3/lib/python3.6/site-packages/arrayfire/tests/simple/array_test.py", line 26, in simple_array
display_func(b)
File "/home/sabih/anaconda3/lib/python3.6/site-packages/arrayfire/tests/simple/_util.py", line 50, in print_func_impl
_print_log += str(arg) + '\n'
File "/home/sabih/anaconda3/lib/python3.6/site-packages/arrayfire/array.py", line 1281, in __str__
return self._get_metadata_str(dims=False) + self._as_str()
File "/home/sabih/anaconda3/lib/python3.6/site-packages/arrayfire/array.py", line 1301, in _as_str
safe_call(be.af_array_to_string(c_pointer(arr_str), "", self.arr, 4, True))
File "/home/sabih/anaconda3/lib/python3.6/site-packages/arrayfire/util.py", line 79, in safe_call
raise RuntimeError(to_str(err_str))
RuntimeError: In function void print(const char*, af_array, int, std::ostream&, bool) [with T = int; af_array = void*; std::ostream = std::basic_ostream]
In file src/api/c/print.cpp:
```
After spending a day trying to think as to what the problem could be, I discovered that the problem is due to conflict with the install of pycuda, as soon as I removed pycuda, the arrayfire tests passed. The different version of pycuda give the same error.
Now I solved the issue by installing pycuda in a separate folder and adding that to the PYTHONPATH instead of the default in anaconda.
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
The failure is reported through arrayfire/tests/simple/array_test.py and arrayfire/tests/simple/_util.py, with formatting in arrayfire/array.py and error handling in arrayfire/util.py. Reproduce the Anaconda/Linux setup with pycuda installed, then compare it with the separate-PYTHONPATH workaround. Done means the simple tests pass without requiring that workaround, with the dependency interaction documented or fixed.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- anaconda, linux, python
- Área
- operating-systems, tooling
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 25/100