Skip to content

Commit 453eb56

Browse files
Update README.md
1 parent f475e0e commit 453eb56

File tree

1 file changed

+36
-4
lines changed

1 file changed

+36
-4
lines changed

README.md

Lines changed: 36 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -62,9 +62,10 @@ combines established concepts, as the name suggests.
6262
### Evaluation
6363

6464
- [NNUE](https://www.chessprogramming.org/NNUE)
65-
- `(768 -> 128)x2 -> 1`
66-
- Quantization to `i16`
67-
- Trained using original data generated through self-play, starting from a randomly initialized network
65+
- Architecture: `(768 -> 128)x2 -> 1`
66+
- Activation Function: `CReLU`
67+
- Quantization: `i16` (`256`/`64`)
68+
- Trained on original data generated entirely through self-play
6869

6970
## Rating
7071

@@ -88,6 +89,15 @@ combines established concepts, as the name suggests.
8889

8990
You can download precompiled builds from the [GitHub Releases page](https://github.com/codedeliveryservice/Reckless/releases).
9091

92+
- `x86_64-v1`: Slowest, compatible with any x86-64 CPU.
93+
- `x86_64-v2`: Faster, requires support for `POPCNT`, `SEE3`, etc.
94+
- `x86_64-v3`: Even faster, requires support for `AVX2`, etc.
95+
- `x86_64-v4`: Fastest, requires support for `AVX512`.
96+
97+
For detailed information on the specific features needed for each level, refer to the [x86-64 microarchitecture levels][microarchitecture] Wikipedia page.
98+
99+
[microarchitecture]: https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels
100+
91101
### Building from source
92102

93103
To build the engine from source, make sure you have `Rust 1.65` or a later version installed.
@@ -96,7 +106,16 @@ If you don't have Rust, follow the [official Rust installation guide](https://ww
96106
Then, compile the engine using `Cargo`:
97107

98108
```bash
99-
cargo build --release
109+
cargo rustc --release -- -C target-cpu=native
110+
```
111+
112+
Alternatively, you can use the provided `Makefile`:
113+
114+
```bash
115+
# Build for the current CPU architecture
116+
make
117+
# Build release binaries for all microarchitecture levels
118+
make release
100119
```
101120

102121
### Usage
@@ -106,6 +125,19 @@ such as [Cute Chess](https://github.com/cutechess/cutechess) or [ChessBase](http
106125

107126
Alternatively, you can communicate with the engine directly using the [UCI protocol](https://backscattering.de/chess/uci).
108127

128+
### Custom commands
129+
130+
Along with the standard UCI commands, Reckless supports additional commands for testing and debugging:
131+
132+
| Command | Description |
133+
| --------------- | ----------------------------------------------------------------------------------- |
134+
| `perft <depth>` | Run a [perft][perft] test to count the number of leaf nodes at a given depth. |
135+
| `bench <depth>` | Run a [benchmark][bench] on a set of positions to measure the engine's performance. |
136+
| `eval` | Print the static evaluation of the current position from white's perspective. |
137+
138+
[perft]: https://www.chessprogramming.org/Perft
139+
[bench]: /src/tools/bench.rs
140+
109141
## Contributing
110142

111143
Contributions are welcome! If you encounter issues or have suggestions for improvements,

0 commit comments

Comments
 (0)