| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [View Raw Code] [Original HTTPS Page] |
First off — thanks for taking the time to look at this project. This is a personal learning project focused on GPU inference engineering, and contributions that deepen that exploration are very welcome.
Most welcome:
Also welcome:
Out of scope for now:
# CUDA 12.x
nvcc --version
# CMake 3.20+
cmake --version
# Python 3.10+
pip install pybind11 safetensors numpy torch # torch only needed for correctness testsgit clone https://github.com/lecuong1502/CUDA-Inference-Engine
cd CUDA-Inference-Engine
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc)# Numerical correctness vs PyTorch reference
python tests/test_kernels.py
# Full benchmark suite
python benchmarks/run_benchmark.pyOpen an issue first for anything non-trivial — kernel changes, new features, API modifications. Describe what you're trying to fix or add and why.
Fork and branch from main:
git checkout -b fix/attention-kernel-overflowBranch naming: fix/, feat/, bench/, docs/ prefixes.
Write or update tests. Kernel changes must include a test in tests/test_kernels.py that validates output against a PyTorch reference within an acceptable tolerance:
assert torch.allclose(engine_output, pytorch_output, atol=1e-4, rtol=1e-3)Include benchmark numbers for any change that claims a performance improvement. Format:
Before: X ms/token, Y tok/s (RTX 4050, seq_len=512) After: X ms/token, Y tok/s
Open a pull request against main. Keep the PR focused — one fix or feature per PR.
// Grid: (M/BM, N/BN)
// Block: (BN, BM)
// Shared: 2 * BM * BK * sizeof(float)Use conventional commits:
fix: resolve numerical overflow in softmax kernel for long sequences feat: add FP16 attention kernel with 2x memory reduction bench: add GQA benchmark vs standard MHA docs: clarify tiling strategy in gemm.cu comments
Open a GitHub issue with:
If you're unsure whether something is worth contributing, open a Discussion rather than an issue. Questions about the kernel implementation, GPU architecture, or quantization math are also welcome there.
By contributing, you agree that your contributions will be licensed under the Apache 2.0 License — same as the rest of the project.
| Back | FazBrowse Home | New Git URL |