Sudoku Performance Benchmark Results

Sudoku is a logic-based number placement puzzle. The objective is to fill a (n^2 x n^2) grid so that each column, each row, and each of the nine (n x n) boxes contains the digits from 1 to n. The puzzle starts with a partially complete grid. In our tests, we use n in {3, 4, 5}.

This benchmark intends to stress-test the beta nodes of the Rete network. Thus, it generates a lot of activity in the join network and has a number of rules with similar conditions. The design of this benchmark is such that the order in which rules of the same salience fire is irrelevant. In addition, it is designed to demonstrate the difference between a directed search (non-stress mode) and a naive search (stress mode).

We have run the Sudoku benchmarks only on CLIPS and Jess. The benchmark results of other rule engines will be published in the future once we have ported this benchmark to the rule engines.

The following three figures shows the processing time of six rule engines on Solaris for Sudoku (n x n), where n = 3, 4 and 5. They shows that the processing time does not increase with the level of complexity.

View in actual size

Page: 1, 2, 3, 4, Next

>> Contact us about this article