This PR implements GPU support to pyarrow. In order to use it, the Arrow C++ library must be built with the following cmake options: ``` -DARROW_PYTHON=on -DARROW_GPU=ON -DARROW_IPC=ON ``` To enable GPU support in pyarrow, it must be built with `--with-arrow-gpu` option, e.g. ``` python setup.py build_ext --with-arrow-gpu <other options> ``` or the environment must define ``` PYARROW_WITH_ARROW_GPU=1 ```
This GPU support implementation is rather complete: all Arrow C++ GPU related functions and classes are exposed to Python, the new methods and functions are documented, the test coverage is close to 100%. However, there are some issues that need to be tackled and questions to be answered (hence the WIP attribute): 1. Is the naming convention of the new methods appropriate? Are there any changes needed in the new API? 2. The IPC test (see `test_IPC` in `python/pyarrow/tests/test_gpu.py`) fails when calling `open_ipc_buffer`: `cuIpcOpenMemHandle fails with code 201` . Currently, I don't know why. Any hint or help on this is much appreciated. 3. Anything else? [ Full content available at: https://github.com/apache/arrow/pull/2536 ] This message was relayed via gitbox.apache.org for [email protected]
