Skip to content
Open
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 24 additions & 12 deletions docs/source/get-started/package-managers.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,32 @@ Package Managers

Use your favorite package manager to install Kokkos.

System package managers
Package managers
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are we dropping the distinction between system package managers and other package managers such as Spack and whatnot?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am fine with the proposed version, we list all package managers and then do a focus on one of them, Spack.

You prefer to go back to only system package managers ?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I do

~~~~~~~~~~~~~~~~~~~~~~~
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add a comment below here:

.. warning::

   Only the Spack package below is maintained by Kokkos developers and is our only official supported package. Others may be used, but please contact the listed maintainers for any issues.

Just to make it extra clear that we can't commit to supporting all the OS packages?


DNF
---

You may use the Fedora Project package manager to install Kokkos
https://packages.fedoraproject.org/pkgs/kokkos/

Other package managers
~~~~~~~~~~~~~~~~~~~~~~

`Spack <https://spack.io>`_
---------------------------
+----------+---------------------------------------+----------------------+--------+---------------------------------------+----------------------------------------------------------------------------------------------------------+
| Distro | Command to install | Backend | Vetted | Maintainer | Build Source |
+==========+=======================================+======================+========+=======================================+==========================================================================================================+
| Fedora | ``dnf install kokkos-devel`` | openMP, rocm, serial | a bit | rbberger | `here <https://src.fedoraproject.org/rpms/kokkos/blob/rawhide/f/kokkos.spec>`_ |
+----------+---------------------------------------+----------------------+--------+---------------------------------------+----------------------------------------------------------------------------------------------------------+
| Debian | ``apt-get install libkokkos-dev`` | openMP | a bit | alexmyczko | `here <https://salsa.debian.org/debian/kokkos/-/blob/master/debian/rules>`_ |
+----------+---------------------------------------+----------------------+--------+---------------------------------------+----------------------------------------------------------------------------------------------------------+
| Conda | ``conda install conda-forge::kokkos`` | openMP (linux), Threads (windows), serial, CUDA | nope | carterbox | `here <https://github.com/conda-forge/kokkos-feedstock/blob/main/recipe/build.sh>`_ |
+----------+---------------------------------------+----------------------+--------+---------------------------------------+----------------------------------------------------------------------------------------------------------+
| openSUSE | ``zypper install kokkos-devel`` | openMP, serial | nope | `[email protected] <mailto:[email protected]>`_ | `here <https://build.opensuse.org/projects/science/packages/kokkos/files/kokkos.spec?expand=1>`_ |
+----------+---------------------------------------+----------------------+--------+---------------------------------------+----------------------------------------------------------------------------------------------------------+
| Gentoo | ``emerge kokkos`` | whatever enabled | a bit | tamiko | `here <https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-cpp/kokkos/kokkos-4.3.1.ebuild>`_ |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are we sure about the link ? I get a Path not found

+----------+---------------------------------------+----------------------+--------+---------------------------------------+----------------------------------------------------------------------------------------------------------+
| Arch | ``pacman -S kokkos`` | Threads, serial | maybe | carlosal1015 | `here <https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=kokkos>`_ |
+----------+---------------------------------------+----------------------+--------+---------------------------------------+----------------------------------------------------------------------------------------------------------+
| Mac Port | ``port install kokkos-devel`` | openMP, serial | no | MarcusCalhoun-Lopez | `here <https://github.com/macports/macports-ports/blob/master/devel/kokkos/Portfile>`_ |
+----------+---------------------------------------+----------------------+--------+---------------------------------------+----------------------------------------------------------------------------------------------------------+
| Spack | ``spack install kokkos`` | whatever enabled | yes | cedricchevalier19, nmm0, lucbv | `here <https://github.com/spack/spack/blob/develop/var/spack/repos/builtin/packages/kokkos/package.py>`_ |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
| Spack | ``spack install kokkos`` | whatever enabled | yes | cedricchevalier19, nmm0, lucbv | `here <https://github.com/spack/spack/blob/develop/var/spack/repos/builtin/packages/kokkos/package.py>`_ |
| Spack | ``spack install kokkos`` | whatever enabled | yes | cedricchevalier19, nmm0, lucbv | `here <https://github.com/spack/spack-packages/blob/develop/repos/spack_repo/builtin/packages/kokkos/package.py>`_ |

+----------+---------------------------------------+----------------------+--------+---------------------------------------+----------------------------------------------------------------------------------------------------------+
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure that we want to put this kind of table in the primary documentation:

  • Some information is targeted to end-users (what packages exist and if they are "vetted" or not)
  • Other information related to collaboration and contributions: maintainers, source link.

For the user, I would rather have a sentence explaining that Kokkos might be available in distribution packages. Still, we do not know their usability deeply for now, so we advise building from source.

However, having a page for packagers makes sense, but I am not sure that we want to duplicate a table that is mostly dynamically available on repology. Here, the "vetted" status might be more apparent. Currently, it is not obvious what "a bit" vs "maybe" means.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I disagree with the latter point, repology only provides the version packaged and the maintainer, the former we didn't include in our table, the latter is mostly wrong (e.g. [email protected]).



More on `Spack <https://spack.io>`_
-----------------------------------

Spack is a popular package manager for HPC. Spack comes with installation recipes for Kokkos.

Expand Down
Loading