Skip to content

gahtan-syarif/bullet

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bullet

bullet is a domain-specific ML library, generally used for training NNUE-style networks for some of the strongest chess engines in the world.

Features

  • Autograd
  • CUDA and HIP backends
    • Makes heavy use of (cu/hip)BLAS wherever possible
    • A number of custom kernels
  • Lots of NNUE and chess engine specific tooling
    • Input feature types
    • Output buckets
    • Data formats
    • Utilities

Usage

Before attempting to use, check out the docs. They contain all the main information about building bullet, managing training data and the network output format.

Most people simply clone the repo and edit one of the examples to their taste.

Alternatively, import the crate with

bullet = { git = "https://github.com/jw1912/bullet" }

Specific API documentation is covered by Rust's docstrings.

Help/Feedback

Please open an issue to file any bug reports/feature requests. For general questions about bullet - e.g. what your training schedule should look like - you can go to the dedicated channel in the Engine Programming discord server.

About

Neural Network Trainer

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 89.3%
  • Cuda 10.7%