Skip to content

jeffdaily/moat

Repository files navigation

MOAT

MOAT (Moat Obliteration via Automated Translation) ports popular CUDA GitHub projects to ROCm/HIP, one repo at a time, across AMD targets: Linux gfx90a, Linux gfx1100, and Windows gfx1151. It is driven by Claude: a planner analyzes each project, a porter applies the change on a fork in the jeffdaily org, a reviewer checks it, and a validator builds and runs the real tests on AMD hardware. This repo is the control plane; it tracks progress and accumulates porting best practices in PORTING_GUIDE.md.

How it works

Each project gets a folder under projects/ holding its plan, notes, and a per-platform status file. A fresh Claude CLI run in this repo detects its AMD architecture, finds the next actionable project, and continues the pipeline. Linux gfx90a is the lead platform; gfx1100 and gfx1151 reuse the resulting fork branch and re-validate, since the three AMD targets share one unified ROCm port.

Scope and honesty

The project list below is a best-effort ranked union of targeted GitHub searches, not a census of every CUDA repo (GitHub search caps results per query and misses repos whose dominant language is not Cuda). Ports aim to be minimally invasive: for pure CMake projects we prefer enable_language(HIP) plus a single cuda-to-hip compat header (the colmap model); for pytorch extensions we rely on torch's build-time hipify. A CPU-only build smoketest proves compilation only; correctness is gated on real-GPU test runs. See PORTING_GUIDE.md.

Projects we will not port (already ported, already supported, can't be ported, or not a real target) are recorded with reasons in data/dispositions.json and kept out of the actionable list; utils/triage.py manages those decisions.

Status legend: todo not started, planning / porting / review / validating in progress, done completed, gated waiting on the gfx90a port, revalidate the shared branch changed since this platform last passed, blocked needs input.

Projects

Project Upstream Fork gfx90a gfx1100 gfx1151
Open3D isl-org/Open3D Open3D done done validating (blocked)
pytorch3d facebookresearch/pytorch3d pytorch3d done done done
catboost catboost/catboost catboost revalidate revalidate validating (blocked)
cudf rapidsai/cudf cudf done revalidate validating
LMCache LMCache/LMCache LMCache done done validating (blocked)
gsplat nerfstudio-project/gsplat gsplat done done done
llm.c karpathy/llm.c llm.c done done done
kaldi kaldi-asr/kaldi kaldi done done validating
cuml rapidsai/cuml - planned gated gated
CTranslate2 OpenNMT/CTranslate2 CTranslate2 done done validating
alien chrxh/alien alien done done validating
mahout apache/mahout mahout done done validating
LichtFeld-Studio MrNeRF/LichtFeld-Studio LichtFeld-Studio done done validating
lc0 LeelaChessZero/lc0 lc0 done done validating
oneflow Oneflow-Inc/oneflow oneflow done done validating
arrayfire arrayfire/arrayfire arrayfire done done validating
CV-CUDA CVCUDA/CV-CUDA CV-CUDA done done validating
cugraph rapidsai/cugraph cugraph planned (blocked) gated gated
mirage mirage-project/mirage - todo (blocked) gated gated
k2 k2-fsa/k2 k2 done done validating
raft rapidsai/raft raft revalidate revalidate validating
heavydb heavyai/heavydb - todo (blocked) gated gated
rmm rapidsai/rmm rmm done done done
cuvs rapidsai/cuvs cuvs porting gated gated
GPUMD brucefan1983/GPUMD GPUMD done done done
cuCollections NVIDIA/cuCollections cuCollections done done validating
amgcl ddemidov/amgcl amgcl done done validating (blocked)
CudaSift Celebrandil/CudaSift CudaSift done done done
cupoch neka-nat/cupoch cupoch done done validating (blocked)
popsift alicevision/popsift popsift done done done
NATTEN SHI-Labs/NATTEN - planned gated gated
ElasticFusion mp3guy/ElasticFusion ElasticFusion done done validating
cucim rapidsai/cucim cucim done done validating
ZhiLight zhihu/ZhiLight ZhiLight done done validating
SpargeAttn thu-ml/SpargeAttn - todo (blocked) gated gated
3DUNDERWORLD-SLS-GPU_CPU theICTlab/3DUNDERWORLD-SLS-GPU_CPU 3DUNDERWORLD-SLS-GPU_CPU done done validating
STRUMPACK pghysels/STRUMPACK STRUMPACK done done validating
AutoDock-GPU ccsb-scripps/AutoDock-GPU AutoDock-GPU done done validating
FlashKDA MoonshotAI/FlashKDA - planned gated gated
3P-ADMM-PC2 Samarvivian/3P-ADMM-PC2 - todo gated gated
unified-cache-management ModelEngine-Group/unified-cache-management - todo gated gated
gtsam_points koide3/gtsam_points gtsam_points done done validating
gpu4pyscf pyscf/gpu4pyscf - planned gated gated
RXMesh owensgroup/RXMesh RXMesh done done validating
MPPI-Generic ACDSLab/MPPI-Generic MPPI-Generic done done validating
sppark supranational/sppark - todo gated gated
Gpufit gpufit/Gpufit Gpufit done done validating
FlashRT LiangSu8899/FlashRT - todo gated gated
evogp EMI-Group/evogp evogp done done validating
ffpa-attn xlite-dev/ffpa-attn - todo gated gated
FlashMoE osayamenja/FlashMoE - todo gated gated
LiteGS MooreThreads/LiteGS LiteGS done done validating
CUDA-L2 deepreinforce-ai/CUDA-L2 - todo gated gated
Fast-Poisson-Image-Editing Trinkle23897/Fast-Poisson-Image-Editing Fast-Poisson-Image-Editing done done done
icicle ingonyama-zk/icicle - revalidate validating validating
dietgpu facebookresearch/dietgpu dietgpu done done validating
bam ZaidQureshi/bam - todo gated gated
sparser-faster-llms SakanaAI/sparser-faster-llms - todo gated gated
llmq IST-DASLab/llmq - todo gated gated
LEAP llnl/LEAP - todo gated gated
ntransformer xaskasdf/ntransformer - todo gated gated
FaithC Luo-Yihao/FaithC - todo gated gated
rmcl uos/rmcl rmcl done done validating
fused-ssim rahul-goel/fused-ssim fused-ssim done done validating (blocked)
gpuRIR DavidDiazGuerra/gpuRIR gpuRIR done done validating
yalm andrewkchan/yalm yalm done done validating
mHC.cu AndreSlavescu/mHC.cu - todo gated gated
EnvGS zju3dv/EnvGS EnvGS done done validating
egg.c d0rc/egg.c - todo gated gated
DiffPhysDrone HenryHuYu/DiffPhysDrone DiffPhysDrone done done validating
libSGM fixstars/libSGM libSGM done done validating
CPM.cu OpenBMB/CPM.cu - todo gated gated
marian-dev marian-nmt/marian-dev marian-dev done validating blocked-needs-gfx1100
RWKV-CUDA BlinkDL/RWKV-CUDA RWKV-CUDA done done validating
splatad carlinds/splatad splatad done done validating
cudaKDTree ingowald/cudaKDTree cudaKDTree done done done
Quest mit-han-lab/Quest - planned gated gated
PhoenixOS SJTU-IPADS/PhoenixOS - todo gated gated
3DGS-LM lukasHoel/3DGS-LM 3DGS-LM done done validating
fp6_llm usyd-fsalab/fp6_llm - todo gated gated
gaussian_splatting joeyan/gaussian_splatting gaussian_splatting done done validating
DDN-SLAM DrLi-Ming/DDN-SLAM DDN-SLAM porting (blocked) gated gated
op43dgs LetianHuang/op43dgs op43dgs done done validating
faiss facebookresearch/faiss faiss done done validating

Layout

See projects/README.md for the per-project files, PORTING_GUIDE.md for porting strategy and fault classes, and CLAUDE.md for how a Claude CLI drives the pipeline.

About

MOAT: a Claude-driven effort to port popular CUDA GitHub projects to ROCm/HIP across AMD targets (Linux gfx90a, gfx1100, Windows gfx1151)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors