Forum Stats

  • 3,876,077 Users
  • 2,267,057 Discussions


Parallel Execution?

JanGLi Member Posts: 650 Bronze Badge
edited Sep 25, 2017 9:02AM in Financial Consolidation


I have multiple business rules/vb scripts.. that i can execute at a time... when i calculate. The issue is it is taking too much time to execute them linearly is it possible to execute my subroutines/business rules/rule sets in parallel when i calculate ? or i can only do it linearly/sequentially.



  • ericerikson
    ericerikson Member Posts: 608 Bronze Trophy
    edited Sep 23, 2017 6:01AM

    Hi. For a given entity, the answer is no, the subroutine runs top to bottom. What you can do to parallel things is to run multiple consolidations at the same time. Consolidate different sections of the hierarchy so they won’t overlap, like if your hierarchy is geographic then do Asia, Europe, North America, and South America at the same time. When all is done then do Total Company. A taskflow or something like EPM Maestro or Accelatis could help with this.


  • CBarbieri
    CBarbieri Member Posts: 1,011 Gold Trophy
    edited Sep 25, 2017 9:02AM

    My research on rules performance shows the average entity takes about 0.4 seconds to run per period. That is, perform a "consolidate all with data" on a parent entity for one period and divide by the number of descendants. The range of time for most rules is between 0.2 and 2.0 seconds per entity per period. Long running rules I've seen take 5 - 8 seconds per entity or longer.

    The question here is whether rules take long because the hardware is slow or the rules are calculation intensive. Therefore I use another measure in which I divide the total consolidation time using the normal, full rules set, against one in which Sub Calculate and Sub Translate have been removed. I also add default consolidation rules. I call this the "blank rules" time. No consolidation will be faster than one that contains no rules. If I divide the full rule consolidation by the blank rules time, I get the rules impact ratio which is a measure of how calculation intensive the rules are.

    The average rules impact ratio is around 7 times and ranges to about 14 times. Anything lower than 7 is something I wouldn't worry too much about in terms of rewriting, though certainly we can often improve these rules too. An impact ratio higher than the average is a candidate for analysis with the long running rules needing a rewrite. I have seen impact ratios as high as 50 which we were able to reduce to 15 times.

    So, if you are trying to find ways to run your rules faster, consider these measurements. If the impact ratio is in the "normal" range, and your times per entity per period are above average, look into tuning the infrastructure. If instead the impact ratio is high, look hard at the rules to find ways to optimize them.

    - Chris

This discussion has been closed.