CUDA-MCGS is a framework project for GPU-resident Monte Carlo Graph Search. It is intended for developers building search applications across games, planning, optimization, and other domains.
Public pre-release: a development library exists, but there is no released npm package or physically qualified production GPU search runtime.
- The search runs on the GPU, not through it. Once ignited, active search progression is required to remain device-owned through restricted Device-JS, not a host loop dispatching one kernel per tree step. Keeping the CPU out of the internal search loop is a hard contract in the accepted design. The prerelease implementation already contains the Search Compiler, graph/policy/resource/progress/output machinery, Device-JS program composition, and public CUDA-JS runtime adapter needed to realize that contract; physical end-to-end qualification remains open.
- Accepted search contracts and versioned Search IR schemas.
- A Search Compiler that normalizes profiles and composes search programs before execution.
- A prerelease library facade and explicit Search Compiler/runtime-adapter exports.
- A public CUDA-JS runtime adapter, CUDA-free reference implementations, and conformance runners.
The development package is private. Its API is not stable, and portable/reference checks do not establish GPU correctness, native Linux support, or performance. Exact CUDA-MCGS/CUDA-JS physical qualification remains open.
The aim is finite, device-owned search progression after launch, with reusable domain, graph, policy, evaluator, resource, and result contracts. Optional session and extension capabilities compose through those contracts.
CUDA-JS supplies generic GPU/runtime/compiler mechanisms; CUDA-JS-Tensor supplies tensor mathematics. Applications retain their own rules and output meaning. The separate UCI Arena Vector project owns the chess engine.
See the framework overview, accepted specifications, and current status for the boundary between implemented work and intended capabilities.
For the bounded CUDA-free reference, use Node.js 24 or newer and Git. Node 24 and 26 have portable conformance coverage; native CUDA-JS execution retains the Node/platform requirements of its separately qualified compatible pair.
git clone https://github.com/iteathen/CUDA-MCGS.git
cd CUDA-MCGS
node scripts/run-search-ir-reference.mjsThis runs Search IR normalization and deterministic reference cases. It is a reference check, not a GPU search demonstration.
For library entry points, see the library interface. For the complete repository checks, package verification, and native prerequisites, see conformance and the development index.