sugyan / yasai

Yet Another Shogi library, for AI development
GNU General Public License v3.0
25 stars 4 forks source link

SIMD Bitboard #17

Closed sugyan closed 2 years ago

sugyan commented 2 years ago

Reference benchmark results of current main branch:

test movegen::bench_legal_moves_from_default ... bench:         868 ns/iter (+/- 26)
test movegen::bench_legal_moves_maximum      ... bench:       3,343 ns/iter (+/- 263)

test perft::bench_perft_3_from_maximum_moves ... bench: 321,368,386 ns/iter (+/- 25,436,785)
test perft::bench_perft_5_from_default       ... bench: 380,586,822 ns/iter (+/- 67,586,591)

(MacBook Pro (13-inch, 2019, Four Thunderbolt 3 ports), 2.8 GHz Quad-Core Intel Core i7, 16 GB 2133 MHz LPDDR3)

sugyan commented 2 years ago

Benchmark results: cargo +nightly bench --features simd

test movegen::bench_legal_moves_from_default ... bench:         957 ns/iter (+/- 43)
test movegen::bench_legal_moves_maximum      ... bench:       3,291 ns/iter (+/- 559)

test perft::bench_perft_3_from_maximum_moves ... bench: 362,117,899 ns/iter (+/- 75,062,481)
test perft::bench_perft_5_from_default       ... bench: 519,192,684 ns/iter (+/- 39,836,946)
sugyan commented 2 years ago
test movegen::bench_legal_moves_from_default ... bench:         894 ns/iter (+/- 80)
test movegen::bench_legal_moves_maximum      ... bench:       2,968 ns/iter (+/- 103)

test perft::bench_perft_3_from_maximum_moves ... bench: 198,507,294 ns/iter (+/- 8,340,779)
test perft::bench_perft_5_from_default       ... bench: 244,477,463 ns/iter (+/- 6,397,168)
sugyan commented 2 years ago
test movegen::bench_legal_moves_from_default ... bench:         864 ns/iter (+/- 110)
test movegen::bench_legal_moves_maximum      ... bench:       2,931 ns/iter (+/- 76)

test perft::bench_perft_3_from_maximum_moves ... bench: 204,704,586 ns/iter (+/- 8,262,732)
test perft::bench_perft_5_from_default       ... bench: 241,611,707 ns/iter (+/- 10,619,394)
sugyan commented 2 years ago
test movegen::bench_legal_moves_from_default ... bench:         832 ns/iter (+/- 74)
test movegen::bench_legal_moves_maximum      ... bench:       2,925 ns/iter (+/- 141)

test perft::bench_perft_3_from_maximum_moves ... bench: 217,675,285 ns/iter (+/- 11,059,293)
test perft::bench_perft_5_from_default       ... bench: 250,685,268 ns/iter (+/- 11,850,854)
sugyan commented 2 years ago
test movegen::bench_legal_moves_from_default ... bench:         816 ns/iter (+/- 34)
test movegen::bench_legal_moves_maximum      ... bench:       2,829 ns/iter (+/- 105)

test perft::bench_perft_3_from_maximum_moves ... bench: 203,672,670 ns/iter (+/- 8,561,137)
test perft::bench_perft_5_from_default       ... bench: 246,704,832 ns/iter (+/- 5,295,590)