WF3 Design Time Performance - III

By this time you are saying, I don't want tips/trouble shooting anymore. I have a large workflow and I cant really re-factor it further. How can I improve the performance?

One of the customers actually told us that the way his system was designed, re-factoring might result into affecting runtime performance since he would need to be passing context across different State Machines. Hence, he would rather take the design time performance hit, than the runtime performance issues.

Well, we have heard these customers. Starting in VS 2010 RTM, the design time workflow performance has been improved drastically across the board. Please find some of the statistics we took recently comparing VS 2008 SP1 and VS 2010 for design time workflow performance.

Custom State Machine Workflow with ~10K lines of Code Besides and ~500 activities

Scenario VS 2008 SP1 VS 2010
Cold Open Workflow Designer 40 21
Warm Open Workflow Designer* 31 13
Activity Bind Launch** 153 30

*: Warm scenario is one where you have opened the designer at least once and closed it. So the subsequent opening of the designer in the same VS instance is called a Warm open.

**: Note that the Activity Bind dialog numbers are also similar to what you will notice for Code Handler generation or the Type Browser dialog launch or the Rule Set editor launch.

The final question, you got is, I cant move to VS 2010 right now. Is there a QFE or patch we can apply to VS 2008 SP1? Again, I am really pleased to announce that the answer is a resounding YES. The QFE is now available to the customers here and here(apply them together for maximum benefits!). So go ahead, try the patches on VS 2008 SP1 or move to VS 2010 RTMĀ and see for yourself the tremendous improvements the product team has delivered for WF3 Designers.

Hope this 3 part series helps you in improving the designer performance considerably. As always, ping me if you have any questions/concerns.

Thanks,

Kushal.