This page is a place for Michael to dump his frequent rants and notes on improving build performance.


    There hasn't as yet been a lot of work done in tuning this process for performance. Some improvements have been made in the compiler, and using MVEL can yield good results.


    The problem areas:


    • Compiling (parsing is very fast)

    • Rete network building

    • Serialization/deserialization of binary assets


    There is a utility class LargeRuleBase which provides the ability to generate large numbers of complex rules for profiling.


    Its results (so far) for 20K complex rules:


    Time taken for parsing: 6264

    Time taken for compiling: 168864

    Time taken rete building: 968571

    Time taken serializing rulebase: 42739