NVIDIA / NVIDIA/cccl

Return algorithm diagrams to CUB docs

Open
#2,319 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
2.5k
Forks
486
Avg merge
2d 6h
Merged PRs (30d)
295

Description

We used to have algorithm diagrams in CUB docs. For instance, reduction used to have the following picture:

![Image](https://github.com/user-attachments/assets/67450dca-68ac-4318-b80e-0c05997fe9e0)

We haven't carried these visualizations into the new sphinx-based docs but users found these very useful. There's an issue with adopting these images as is. First of all, they are at very low resolution. Apart from that, I'd like to avoid storing binary blobs in version control system. These concerns can be addressed if we change the approach to drawing these diagrams and use something like [sphinxcontrib-tikz](https://pypi.org/project/sphinxcontrib-tikz). That'd let us store images as text inline. This would further help when we adopt a different docs theme that had dark mode.

### Tasks
- [ ] Integrate sphinxcontrib-tikz into CCCL docs
- [ ] Implement tikz version of [block loading](https://github.com/NVlabs/cub/blob/gh-pages/docs/images/block_load_logo.png) logo
- [ ] Implement tikz version of [block reduction](https://github.com/NVlabs/cub/blob/gh-pages/docs/images/block_reduce.png) logo
- [ ] Implement tikz version of block scan raking logo
- [ ] Implement tikz version of block scan warp scans logo
- [ ] Implement tikz version of store logo
- [ ] Implement tikz version of blocked arrangement diagram
- [ ] Implement tikz version of CNP abstraction diagram
- [ ] Implement tikz version of CUB overview diagram
- [ ] Implement tikz version of generic abstraction diagram
- [ ] Implement tikz version of histogram logo
- [ ] Implement tikz version of partition logo
- [ ] Implement tikz version of reduce logo
- [ ] Implement tikz version of run length encode logo
- [ ] Implement tikz version of scan logo
- [ ] Implement tikz version of segmented sorting logo
- [ ] Implement tikz version of select flags logo
- [ ] Implement tikz version of select logo
- [ ] Implement tikz version of striped arrangement diagram
- [ ] Implement tikz version of unique logo
- [ ] Implement tikz version of transpose logo

Legacy renders can be found here: https://github.com/NVlabs/cub/tree/gh-pages/docs/images.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.