skip to main content
Corticon Studio: Rule Modeling Guide : Logical analysis and optimization : Optimizing Rulesheets : Effect of compression on Corticon Server performance
 

Try Corticon Now
Effect of compression on Corticon Server performance
Why does Corticon Studio have what amounts to two different kinds of compression – one performed by the Completeness Checker and another performed by the Compression Tool? It is because each has a different role during the rule modeling process. The type of compression performed during a Completeness Check is designed to reduce a (potentially) very large set of missing rules into the smallest possible set of non-overlapping columns. This allows the rule writer to assign Actions to the missing rules without worrying about accidentally introducing ambiguities.
On the other hand, the compression performed by the Compression Tool is designed to reduce the number of rules into the smallest set of general rules (columns with dashes), even if the total number of sub-rules is larger than that produced by the Completeness Checker. This is important for three reasons:
1. The Compression Tool preserves or reproduces key patterns familiar and meaningful to the rule modeler
2. The Compression Tool, by reducing a Rulesheet to the smallest number of columns, optimizes the executable code produced by Corticon Server's on-the-fly compiler. Smaller Rulesheets (lower column count) result in faster Corticon Server performance.
3. The Compression Tool, by reducing columns to their most general state (the most dashes), improves Corticon Server performance by allowing it to ignore all Conditions with dash values. This means that when the rule in column 3 of Missing Rules with Actions Assigned is evaluated by Corticon Server, only the max cargo weight Condition is considered – the other two Conditions are ignored entirely because they contain dash values. When rule 3 of Missing Rules with Actions Assigned is evaluated after the Completeness Check is applied but before the Compression Tool, however, both max cargo weight and volume Conditions are considered, which takes slightly more time. So even though both Rulesheets have the same number of columns (four), the Rulesheet with more generalized rules (more dashes - Missing Rules with Actions Assigned) will execute faster because the engine is doing less work.