Skip to content

Customize:Backends

NCIC-AlphaSparse edited this page Mar 11, 2025 · 3 revisions

Show how to add new backends or platforms in this library.

  1. Decide the formats and the kernels that the backends support.

  2. Follow the ""Customize:formats, kernels"" to see if satisfy the demands or to add new ones.

  3. Create new directory for backends in root path of library.

AlphaSparseLib supports several backends, e.g. the CUDA backend in the path of ROOT/cuda. A new directory should be made for the new backend and include the cmake/makefiles.

  1. Create correspoding files in the new backend directory and update the cmakefiles in the root path.

The contents in the directory may include formats, kernels, some examples, etc. And of course the cmake/makefiles in each sub-dicretory.

The formats directory is used for the format opertaion, mainly for the memory allocation of the format creation on the backends. We supposed that the memory management of the new backend is different from the supported ones.

The kernels dicretory contains the source files of sparse operations implemented with the correspoding programming language.

Clone this wiki locally