From 1b18d1fd5e143a547c94dec1fbf793bdb4685400 Mon Sep 17 00:00:00 2001 From: "Corey J. Nolet" Date: Thu, 23 Mar 2023 20:28:57 -0400 Subject: [PATCH] Adding architecture diagram to README.md (#1370) I noticed some folks on Twitter asking about an architecture diagram for RAFT. I think it's a good idea to provide this in the README. Authors: - Corey J. Nolet (https://github.com/cjnolet) Approvers: - Ben Frederickson (https://github.com/benfred) - Divye Gala (https://github.com/divyegala) URL: https://github.com/rapidsai/raft/pull/1370 --- README.md | 10 +++++++--- img/arch.png | Bin 0 -> 52500 bytes 2 files changed, 7 insertions(+), 3 deletions(-) create mode 100644 img/arch.png diff --git a/README.md b/README.md index 8519ebcae1..8c6e817bf9 100755 --- a/README.md +++ b/README.md @@ -35,12 +35,16 @@ While not exhaustive, the following general categories help summarize the accele | **Tools & Utilities** | common utilities for developing CUDA applications, multi-node multi-gpu infrastructure | -All of RAFT's C++ APIs can be accessed header-only and optional pre-compiled shared libraries can 1) speed up compile times and 2) enable the APIs to be used without CUDA-enabled compilers. +RAFT is a C++ header-only template library with an optional shared library that +1) can speed up compile times for common template types, and +2) provides host-accessible "runtime" APIs, which don't require a CUDA compiler to use -In addition to the C++ library, RAFT also provides 2 Python libraries: -- `pylibraft` - lightweight low-level Python wrappers around RAFT's host-accessible "runtime" APIs. +In addition being a C++ library, RAFT also provides 2 Python libraries: +- `pylibraft` - lightweight Python wrappers around RAFT's host-accessible "runtime" APIs. - `raft-dask` - multi-node multi-GPU communicator infrastructure for building distributed algorithms on the GPU with Dask. +![RAFT is a C++ header-only template library with optional shared library and lightweight Python wrappers](img/arch.png) + ## Getting started ### RAPIDS Memory Manager (RMM) diff --git a/img/arch.png b/img/arch.png new file mode 100644 index 0000000000000000000000000000000000000000..ea9cad9204d16a1ff4587a08e53e8530c5ba0e33 GIT binary patch literal 52500 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 literal 0 HcmV?d00001