We have been using more and more rules-based reps in our template assembly. As the number of assemblies that use these reps increases, so does the number of reps that substitute in these rules-based reps in next-level assemblies. I am starting to worry about performance due to the time it takes Pro/E to evaluate these rules when doing retrievals or switching reps.
When opening large top-level assemblies, of course I prefer to open a rep. I am finding this is taking longer than I would consider normal lately, and getting frustrated leads me to click the stop sign (if I let it get that far before I kill xtop). The message that I get leads me to believe the Pro/E is busy grinding through all the levels of rules definitions. It says: "Do you wish to abort evaluation (results may be incomplete)?". If I click OK it continues retrieving the assembly, and if I repeat this process enough times, I eventually get the expected "Retrieval process has been interrupted. Please select one of the options below. (Continue/Stop/Abort)" message window that will kill the retrieval process (I click continue and it finishes retrieval quickly). If I don't click the stop sign at all, it can take a lot longer to finish retrieval of the assembly, for example, 15+ minutes vs. 1-2 minutes.
Does anyone have any experience with how to tweak the config.pro or the rep rules to improve this aspect of Pro/E performance?
We aborted rep rules about 7 years ago because of performance. As the manager of our top level vehicle assemblies, I spent quite a few hours deleting the rules in the organizational gathering assemblies generated during the short period of time it was included in the start assembly template. I opened an assembly just last week in our WC10.1/WF5.0 environment with the simplified rep including our top level skeleton. It took a couple minutes to open(usually 5 seconds or less) and the first thing I did was delete the rule which was included. Maybe not a solution for you, but a recommendation if you have multilevel large assemblies connected to WC like we do.
Since you have abandoned ruled reps 7 years ago things changed. Ruled Simpreps do no longer evaluate upon regeneration but rather upon request (from simprep UI), so they should have exact same performance as regular simpreps. You are right that once introduced they had the problem of each regeneration evaluation - this is no longer the case. Results of latest ruled rep evaluation are now stored with the model and just used as is upon next time assembly retrieval.
There is actually config option that controls rules evaluation - I do not remember by heart, can be searched for in config editor by *eval*.
Btw, even if set for automatic evaluation, rules produce noticeable performance slowdown only if they have "Include" type action - since they need to retrieve all assembly branches to accomplish evaluation. If action is "Exclude" then rule will run only on the models already in session, and this action is extremely fast.
Hope this helps,