Skip to content

puct9/curdle

Repository files navigation

GPU accelerated Wordle player

Benchmark

System specs: Ryzen 5 3600, RTX 2060 Super. All tests are run on 1 CPU core.

Benchmark results are ordered by filters per second (filters/s). Finding and counting the resultant possible answers after being given a guess and colours counts as 1 filter. (e.g., what and how many words can be the answer if we guess "raise" and see grey, green, yellow, grey, grey?)

Implementation filters/s Seconds to suggest best word
My friend's 1.3k Too many
Naive (Python/NumPy) 13k Loads
Naive (C++) 170k A decent amount
Precomputed word-pair colours (Python/NumPy) 250k 10-13
Precomputed word-pair colours (C++/CUDA) 1.4B 0.002

This method achieves the 3146121 filters to find the best word in the greedy expected information algorithm presented in this video in about 2ms, giving it an effective filtering speed of 1.3B-1.6B filters/s.

About

GPU accelerated Wordle player

Resources

Stars

Watchers

Forks