This repository uses Codex's official project configuration surfaces:
- root
AGENTS.mdfor durable project instructions .codex/config.tomlfor project-scoped Codex runtime config.codex/rules/*.rulesfor command rules.codex/agents/*.mdfor custom subagents.codex/skills/*/SKILL.mdfor project skills
Do not add repository agent configuration back into ad hoc manifests such as
.codex/project.toml. Keep Codex configuration in the official surfaces above.
FastCuda is a handwritten CUDA operator workspace focused on:
- GEMM
- FlashAttention
- performance benchmarking
- performance analysis
- environment diagnosis
- build system: CMake
- host language standard: C++11
- CUDA language standard: C++11
- host platforms: Windows and Linux
- supported CUDA toolkits: 12.8.x and 13.0.x
- default CUDA architectures:
89for GeForce RTX 4090120for GeForce RTX 5060
- default device tiers:
- RTX 4090: 24 GB
- RTX 5060: 8 GB
- Prefer direct CUDA C++ and NVCC-compatible code.
- State GPU architecture assumptions explicitly.
- Keep baseline kernels separate from optimized kernels.
- Make tile sizes, launch geometry, memory strategy, and accumulation type explicit.
- Treat RTX 4090 and RTX 5060 as separate benchmark tiers.
- Do not make performance claims without benchmark or profiler artifacts.
- Inspect the target operator, shape range, dtype, and device tier.
- Refresh environment state with
scripts/env/probe-env.ps1when needed. - Implement or revise the kernel in a narrow change set.
- Benchmark through
scripts/perf/run-benchmark.ps1. - Profile with
scripts/perf/profile-ncu.ps1orscripts/perf/profile-nsys.ps1only after a reproducible benchmark exists. - Record artifacts under
artifacts/.
- Codex config:
AGENTS.md.codex/config.toml.codex/rules/.codex/agents/.codex/skills/
- project docs:
docs/docs/prompts/
- build and execution:
CMakeLists.txtscripts/benchmarks/src/
- machine-readable presets:
configs/
Prompt files live under docs/prompts/. They are reusable task briefs for
human or agent-driven work, but they are not official Codex configuration
surfaces.
Hook and tool wrappers stay under scripts/. They are regular project assets,
not Codex configuration modules.
- Use
kernel-architectfor tiling, dataflow, and launch planning. - Use
kernel-optimizerfor data-backed kernel optimization changes. - Use
perf-analystfor benchmark and profiler interpretation. - Use
env-investigatorfor CUDA, driver, compiler, or profiler environment issues.