Skip to content

gdaisukesuzuki/PKGBUILD_Rapids

Repository files navigation

PKGBUILD_Rapids

a procedure of building NVIDIA's RAPIDS under Arch Linux with CUDA environment on '''Single Nvidia's GPU'''.

Prerequisites

  • Hardware

** Intel or AMD's CPU

** NVIDIA's Single GPU which has architecture whose type is Pascal / Volta / Turing. (eg GeForce / TITAN / Tesla / Quadro)

  • Software

** Arch Linux or its derivatives.

** AUR / yay required

  • Disclaimer

Operation is not necessarily guaranteed. The author are not responsible for any damage of your environment by any of the operations described here.

Order in build

  1. protobuf
* AUR provides the same package. However,  AUR only contains older ver (3.11.1)., (current ver. is 3.12.2)
  1. arrow-cuda / python-pyarrow-cuda
* Build with "CUDA" (differencet from AUR).
* Apache Orc is required located in AUR.
* During compilation in Apache Flight, there is a patch so that gRPC-c++-plugin cab be easily integrated in Higher Version.
  1. python-cmake-setuptools
* Build  Python Library for enabling to run cmake during "python setup.py build"
  1. Cupy
* An implementation of NumPy-compatible  array on CUDA presented by Preferred Networks.
* AUR provides the same package. However,  AUR only contains older ver (7.2.0). which does not support CUDA 10.2 , (current ver. is 7.4.0) 
*  See [github](https://github.com/cupy/cupy)
  1. python-LLVMlite / python-Numba
* An open source JIT compiler that translates a subset of Python and NumPy code into fast machine code.
* These PKGBUILDs provide llvmlite 0.33.0rc1 and Numba 0.50.0rc1, respectively.
*  See githubs. [llvmlite](https://github.com/numba/llvmlite) and [numba](https://github.com/numba/numba)

5.5spdlog

  1. RMM
* RAPIDS Memory Manager provided by  Rapids.
* See [github](https://github.com/rapidsai/rmm)
  1. cuDF
*  a GPU DataFrame taking place of pandas
* See [github](https://github.com/rapidsai/cudf)
  1. cuML
*  A suite of libraries that implement machine learning algorithms presented by Rapids.
* See [github](https://github.com/rapidsai/cuml)

Optional. cuSignal

* GPU accelerated signal processing which may replace scipy signal?
* See [github](https://github.com/rapidsai/cusignal)

Optional rapids-cuSpatial

* a library for handling spatial and trajectory data.
* See [github](https://github.com/rapidsai/cuspatial)

TBD. (rapids-cuGraph]

Sorry, it cannot be built well.

TBD. rapids-dask-cuda

* experimental solution.
* See [github](https://github.com/rapidsai/dask-cuda)

Need for Benchmark

  1. UMAP-Learn
* Uniform Manifold Approximation and Projection for Dimension Reduction
* Only running on  Intelx86-64 (i.e. it cannot run on Jetson Xavier nx)
* its building depends on Python-Numba (See No.5 above).
  1. XGBoost
* an optimized distributed gradient boosting library 
* Builds Library and its Python-Wrapper
  1. treelite
* a model compiler for efficient deployment of decision tree ensembles 
* Builds Library and its Python-Wrapper
  1. Benchmark
* Benchmark Result 

See URL