Uploaded image for project: 'Drools'
  1. Drools
  2. DROOLS-6193

Subnetwork Optimization

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Done
    • Icon: Major Major
    • None
    • None
    • core engine
    • None
    • 2021 Week 19-21 (from May 10)
    • Undefined
    • NEW
    • NEW

      1) Ensure subnetworks are not double activated from the left and the right side.

       

      2) Subnetworks rely on a join process that matches tuple subsumption.  It's not that bad, but it can be improved. Instead ensure there is a unique ID counter, that value is stored on the tuple and passed down to all children. The beta memory is instead replaced with an array, where that ID matches an element in the array with the TupleList. Note this will require a recycling of IDs, i.e. a second array which is a stack of unused IDs to ensure the memory remains linear. Where that ID is below the maximum used, it can be discarded. This means the join cost is nothing more than an array lookup.

              mfusco@redhat.com Mario Fusco
              mproctor@redhat.com Mark Proctor
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: