From c44c6e9dd1de976ba990199ba82d01bb8c2597d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cezary=20Skrzy=C5=84ski?= Date: Fri, 31 Mar 2023 16:36:47 +0200 Subject: [PATCH] Add topic "kokkos" --- topics/kokkos/index.md | 10 ++++++++++ topics/kokkos/kokkos.png | Bin 0 -> 33721 bytes 2 files changed, 10 insertions(+) create mode 100644 topics/kokkos/index.md create mode 100644 topics/kokkos/kokkos.png diff --git a/topics/kokkos/index.md b/topics/kokkos/index.md new file mode 100644 index 00000000000..2a9a12f088d --- /dev/null +++ b/topics/kokkos/index.md @@ -0,0 +1,10 @@ +--- +display_name: Kokkos +github_url: https://github.com/kokkos +logo: kokkos.png +related: c-plus-plus, parallel-computing, high-performance-computing +short_description: Kokkos C++ Performance Portability EcoSystem. +topic: kokkos +url: https://kokkos.github.io/ +--- +The Kokkos C++ Performance Portability Ecosystem is a production level solution for writing modern C++ applications in a hardware agnostic way. The Ecosystem consists of multiple libraries addressing the primary concerns for developing and maintaining applications in a portable way. The three main components are the [Kokkos Core Programming Model](https://github.com/kokkos/kokkos), the [Kokkos Kernels Math Libraries ](https://github.com/kokkos/kokkos-kernels) and the [Kokkos Profiling and Debugging Tools](https://github.com/kokkos/kokkos-tools). diff --git a/topics/kokkos/kokkos.png b/topics/kokkos/kokkos.png new file mode 100644 index 0000000000000000000000000000000000000000..ef36c6f556da2076898a80883e2a81ade846798e GIT binary patch literal 33721 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