Skip to content

Commit 97a3a06

Browse files
LessUpCopilot
andcommitted
docs: build curated resource hub
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 946655b commit 97a3a06

20 files changed

Lines changed: 602 additions & 151 deletions

docs/.vitepress/config.ts

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ export default withMermaid(defineConfig({
3636
{ text: 'Home', link: '/en/', activeMatch: '^/en/$' },
3737
{ text: 'Architecture', link: '/en/architecture/', activeMatch: '^/en/architecture' },
3838
{ text: 'Methodology', link: '/en/methodology/', activeMatch: '^/en/(methodology|learning-path|kernel-.*|optimization-playbook)' },
39-
{ text: 'Resources', link: '/en/references', activeMatch: '^/en/(references|cuda-memory-cheatsheet|performance-casebook)' },
39+
{ text: 'Resources', link: '/en/resources/', activeMatch: '^/en/(resources|references|cuda-memory-cheatsheet|performance-casebook)' },
4040
{ text: 'Validation', link: '/en/validation/', activeMatch: '^/en/(validation|benchmark-results)' },
4141
{ text: 'Support', link: '/en/getting-started', activeMatch: '^/en/getting-started' },
4242
],
@@ -68,9 +68,11 @@ export default withMermaid(defineConfig({
6868
{
6969
text: 'Resources',
7070
items: [
71+
{ text: 'Resources Hub', link: '/en/resources/' },
72+
{ text: 'Further Reading Routes', link: '/en/resources/further-reading' },
7173
{ text: 'CUDA Memory Cheat Sheet', link: '/en/cuda-memory-cheatsheet' },
7274
{ text: 'Performance Casebook', link: '/en/performance-casebook' },
73-
{ text: 'References', link: '/en/references' },
75+
{ text: 'Curated References', link: '/en/references' },
7476
],
7577
},
7678
{
@@ -105,7 +107,7 @@ export default withMermaid(defineConfig({
105107
{ text: '首页', link: '/zh/', activeMatch: '^/zh/$' },
106108
{ text: '架构', link: '/zh/architecture/', activeMatch: '^/zh/architecture' },
107109
{ text: '方法论', link: '/zh/methodology/', activeMatch: '^/zh/(methodology|learning-path|kernel-.*|optimization-playbook)' },
108-
{ text: '资源', link: '/zh/references', activeMatch: '^/zh/(references|cuda-memory-cheatsheet|performance-casebook)' },
110+
{ text: '资源', link: '/zh/resources/', activeMatch: '^/zh/(resources|references|cuda-memory-cheatsheet|performance-casebook)' },
109111
{ text: '验证', link: '/zh/validation/', activeMatch: '^/zh/(validation|benchmark-results)' },
110112
{ text: '支持', link: '/zh/getting-started', activeMatch: '^/zh/getting-started' },
111113
],
@@ -137,9 +139,11 @@ export default withMermaid(defineConfig({
137139
{
138140
text: '资源',
139141
items: [
142+
{ text: '资源中心', link: '/zh/resources/' },
143+
{ text: '延伸阅读路线', link: '/zh/resources/further-reading' },
140144
{ text: 'CUDA 内存速查表', link: '/zh/cuda-memory-cheatsheet' },
141145
{ text: '性能案例库', link: '/zh/performance-casebook' },
142-
{ text: '参考文献', link: '/zh/references' },
146+
{ text: '参考资料清单', link: '/zh/references' },
143147
],
144148
},
145149
{

docs/en/architecture/index.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,8 +83,9 @@ This is not just process documentation. It affects how the architecture is narra
8383
4. Read [Tensor Core Path](/en/architecture/tensor-core-path) before interpreting WMMA benchmark numbers.
8484
5. Use the existing kernel deep dives when you want implementation detail instead of system rationale.
8585

86-
## Related references
86+
## Related resources
8787

88+
- [Resources Hub](/en/resources/)
8889
- [Validation Overview](/en/validation/)
8990
- [Learning Path](/en/learning-path)
9091
- [Getting Started](/en/getting-started)

docs/en/architecture/memory-flow.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,3 +129,4 @@ Padding away bank conflicts and keeping fallback logic explicit are both example
129129
- [Double Buffer](/en/kernel-double-buffer)
130130
- [Tensor Core WMMA](/en/kernel-tensor-core)
131131
- [CUDA Memory Cheat Sheet](/en/cuda-memory-cheatsheet)
132+
- [Resources Hub](/en/resources/)

docs/en/cuda-memory-cheatsheet.md

Lines changed: 25 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,19 @@ title: CUDA Memory Cheat Sheet
44

55
# CUDA Memory Cheat Sheet
66

7-
A compact memory reference for reading SGEMM kernels faster
7+
This quick sheet is now part of the [Resources Hub](/en/resources/). Use it when you need to re-orient yourself before reopening kernel code, profiler output, or WMMA constraints.
88

9+
## When this page is most useful
910

11+
- Right before reading [Memory Flow](/en/architecture/memory-flow) or [Tiled Kernel](/en/kernel-tiled) again.
12+
- When a benchmark changed and you need a fast checklist before blaming occupancy or Tensor Cores.
13+
- When you want to explain memory behavior in an interview without reopening the full CUDA manuals.
1014

1115
## Coalescing quick rules
1216

1317
- Consecutive threads in a warp should touch consecutive addresses whenever possible.
1418
- Accessing `B[k * N + col]` with large `N` can become stride-heavy for neighboring threads.
15-
- Tiling is not just reuse; it is also a way to reshape access into coalesced loads.
19+
- Tiling is not only about reuse; it also reshapes access into more coalesced loads.
1620

1721
```mermaid
1822
flowchart LR
@@ -21,25 +25,34 @@ flowchart LR
2125
C --> D[Global memory writeback]
2226
```
2327

28+
## Shared-memory watchpoints
2429

30+
| Question | Why it matters |
31+
|---|---|
32+
| Are threads writing a tile layout that later reads back contiguously? | Shared memory only helps when it fixes a global-memory access problem instead of creating a local one. |
33+
| Did padding or index remapping remove bank conflicts on the hot path? | Bank conflicts can erase the benefit of otherwise-good tiling choices. |
34+
| Did the extra shared-memory footprint change occupancy enough to matter? | Some tiling wins disappear if the launch geometry becomes too constrained. |
2535

2636
## Tensor Core memory notes
2737

2838
| Topic | What to remember |
29-
|-------|------------------|
30-
| Alignment constraints | WMMA path expects dimensions aligned to 16 for efficient fragment handling |
31-
| Data conversion | End-to-end timing includes conversion and wrapper logic |
32-
| Safe behavior | Non-friendly shapes should fall back to FP32 path |
33-
| Reporting | Distinguish end-to-end and compute-only results |
34-
35-
39+
|---|---|
40+
| Alignment constraints | WMMA paths expect dimensions aligned to fragment-friendly sizes, typically 16, for efficient fragment handling. |
41+
| Data conversion | End-to-end timing includes conversion and wrapper logic, not just the fused matrix multiply. |
42+
| Safe behavior | Non-friendly shapes should fall back to the FP32 path instead of forcing a misleading WMMA result. |
43+
| Reporting | Distinguish end-to-end numbers from compute-only numbers before comparing implementations. |
3644

3745
## Fast checklist when reading a kernel
3846

39-
1. Can I explain the global memory access order for one warp?
40-
2. Is shared memory layout conflict-aware?
47+
1. Can I explain the global-memory access order for one warp?
48+
2. Does shared-memory layout reduce conflicts rather than merely move data around?
4149
3. Are register accumulators bounded and intentional?
4250
4. Is Tensor Core fallback behavior explicit?
4351
5. Do benchmark labels match what the kernel path really measures?
4452

45-
---
53+
## Where to go next
54+
55+
- [Resources Hub](/en/resources/)
56+
- [Further Reading Routes](/en/resources/further-reading)
57+
- [Curated References](/en/references)
58+
- [Diagnosis Loop](/en/methodology/diagnosis-loop)

docs/en/index.md

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ title: SGEMM Architecture Whitepaper
1616
the implementation ladder and the evidence model from the homepage alone.
1717
</p>
1818
<div class="home-action-row">
19-
<a class="btn" href="/en/architecture/">Read the architecture map</a>
20-
<a class="btn btn-outline" href="/en/methodology/">Follow the methodology</a>
21-
<a class="btn btn-outline" href="/en/validation/">Check the validation boundary</a>
19+
<a class="btn" href="./architecture/">Read the architecture map</a>
20+
<a class="btn btn-outline" href="./methodology/">Follow the methodology</a>
21+
<a class="btn btn-outline" href="./validation/">Check the validation boundary</a>
2222
<a class="btn btn-outline" href="https://github.com/LessUp/sgemm-optimization">GitHub</a>
2323
</div>
2424
<div class="home-kicker-row">
@@ -41,7 +41,7 @@ title: SGEMM Architecture Whitepaper
4141
<div class="signal-card">
4242
<div class="signal-title">Validation Boundary</div>
4343
<div class="signal-value">CI is not a GPU</div>
44-
<div class="signal-note">Hosted automation proves build and structure health; local hardware proves runtime and performance.</div>
44+
<div class="signal-note">Hosted automation proves docs and governance health; local hardware proves CUDA runtime and performance.</div>
4545
</div>
4646
<div class="signal-card">
4747
<div class="signal-title">Reader Model</div>
@@ -144,56 +144,56 @@ flowchart LR
144144
<h3>I need the big picture first</h3>
145145
<p>Start with the system view of the repository, then use validation context to interpret what the architecture is allowed to claim.</p>
146146
<div class="route-links">
147-
<a href="/en/architecture/">Architecture</a>
148-
<a href="/en/validation/">Validation overview</a>
147+
<a href="./architecture/">Architecture</a>
148+
<a href="./validation/">Validation overview</a>
149149
</div>
150150
</div>
151151
<div class="route-card">
152152
<h3>I want to learn the optimization ladder in order</h3>
153153
<p>Use the staged reading path when you want each performance concept to build on the previous kernel rather than jump straight to WMMA.</p>
154154
<div class="route-links">
155-
<a href="/en/learning-path">Learning Path</a>
156-
<a href="/en/architecture/">Architecture overview</a>
155+
<a href="./learning-path">Learning Path</a>
156+
<a href="./architecture/">Architecture overview</a>
157157
</div>
158158
</div>
159159
<div class="route-card">
160160
<h3>I want tuning heuristics and follow-up material</h3>
161161
<p>Use the methodology and resource surfaces together when you need actionable optimization guidance plus technical lineage.</p>
162162
<div class="route-links">
163-
<a href="/en/methodology/diagnosis-loop">Diagnosis Loop</a>
164-
<a href="/en/references">References</a>
163+
<a href="./methodology/diagnosis-loop">Diagnosis Loop</a>
164+
<a href="./resources/">Resources hub</a>
165165
</div>
166166
</div>
167167
<div class="route-card">
168168
<h3>I want to reproduce or audit the claims</h3>
169169
<p>Use the support and validation surfaces together to understand what to run locally, what CI already proves, and how results should be interpreted.</p>
170170
<div class="route-links">
171-
<a href="/en/getting-started">Getting Started</a>
172-
<a href="/en/validation/">Validation overview</a>
171+
<a href="./getting-started">Getting Started</a>
172+
<a href="./validation/">Validation overview</a>
173173
</div>
174174
</div>
175175
</div>
176176

177177
## Resource hub entry points
178178

179179
<div class="knowledge-grid">
180-
<a class="knowledge-card" href="/en/architecture/">
180+
<a class="knowledge-card" href="./architecture/">
181181
<h3>Architecture</h3>
182182
<p>The structural map of the kernel ladder, interface boundaries, and the decisions that hold the implementation together.</p>
183183
</a>
184-
<a class="knowledge-card" href="/en/methodology/">
184+
<a class="knowledge-card" href="./methodology/">
185185
<h3>Methodology</h3>
186186
<p>The canonical optimization workflow: staged learning, benchmark discipline, and diagnosis logic tied back to the architecture.</p>
187187
</a>
188-
<a class="knowledge-card" href="/en/references">
188+
<a class="knowledge-card" href="./resources/">
189189
<h3>Resources</h3>
190-
<p>The source trail behind the project: official docs, papers, and mature repositories mapped to concrete decisions.</p>
190+
<p>A curated learning hub that explains which docs, papers, tools, and follow-up routes matter after each part of the whitepaper.</p>
191191
</a>
192-
<a class="knowledge-card" href="/en/validation/">
192+
<a class="knowledge-card" href="./validation/">
193193
<h3>Validation</h3>
194194
<p>The evidence surface for correctness budgets, benchmark scope, fallback behavior, and what the published numbers actually mean.</p>
195195
</a>
196-
<a class="knowledge-card" href="/en/getting-started">
196+
<a class="knowledge-card" href="./getting-started">
197197
<h3>Support</h3>
198198
<p>The practical entry point for cloning, building, testing, and running the project with the right local-versus-CI expectations.</p>
199199
</a>

docs/en/interview-playbook.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,4 +89,4 @@ Strong answer pattern:
8989
- [Kernel Ladder](/en/architecture/kernel-ladder)
9090
- [Validation Overview](/en/validation/)
9191
- [Learning Path](/en/learning-path)
92-
- [References](/en/references)
92+
- [Resources Hub](/en/resources/)

docs/en/project-highlights.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,4 +28,4 @@ This page is now a quick orientation surface. The full “why this design exists
2828
2. [Kernel Ladder](/en/architecture/kernel-ladder)
2929
3. [Validation Overview](/en/validation/)
3030
4. [Interview Playbook](/en/interview-playbook)
31-
5. [References](/en/references)
31+
5. [Resources Hub](/en/resources/)

0 commit comments

Comments
 (0)