Are you experiencing poor server performance managing Pro/E, Creo or Windchill Workgroup Manager (CAD) data in Windchill?
Are users complaining that when working with CAD data, interaction with Windchill or the Workspace is slow?
Do you wonder what you should do to setup or tune a Windchill server for interaction with clients working with CAD data?
Initial performance tuning of a Windchill server doesn't have to be overly complicated and time consuming process. Time spent tuning the Windchill server will improve performance and ensure users have the best possible interaction with the Windchill. Let's walk through the following:
Server Properties and Preferences
Some settings and preferences are general in nature while others are specific to a particular Windchill version. Although the steps to tune a 9.1, 10.0, 10.1 and 10.2 server vary (typically more to do with older releases), I'll cover the typical steps you'll do with most installations (eg. 10.x releases). Refer to CS24192 for full detail for each Windchill release from 9.1 to 10.2 and MOR releases in between.
The WCA will inspect the server (identify available resources like CPUs, RAM, etc.) and suggest changes to wt.properties and other property files. Note that WCA execution is done automatically when installing using the 10.0 and later PTC Solution Installer. If you've upgraded/changed hardware since initial installation or it didn't run on initial installation, you'll want to run it again. See CS40846 and CS153338 for additional detail.
Set defaults for operations like Add to Workspace, Check Out, Check In, Revise, Save As, etc. to collect minimal dependencies (None or Required):
If users need different default values, they can make changes in personal preferences or in the Basic/Advanced collectors when performing the operation.
For releases prior to 10.2 M030, avoid default table displays with additional status columns (eg. Compare Status, Out of Date, etc.) as when those columns are included, the client must make additional and expensive requests to the server when refreshing the Workspace. See CS150977 for additional information.
For some datasets, circular dependency processing when performing Save As can sometimes be an issue (take a long time). Configure to not trace circular dependents if performance issues have been observed performing Save As. See CS51570 and CS3348 for additional information.
Out of the box, Windchill can in some case trace dependencies for objects not explicitly requested by the user (eg. perform full dependency tracing for drawing dependents when the drawing is included in collection via Include Drawings). This can in some cases result in long time waiting for the server to process collection requests (eg. when performing an Add to Workspace). Making this change will disable the additional dependency tracing and should improve performance . See CS57721 & CS127319 for additional detail.
Dependency tracing for large or complex datasets can in some cases cause server performance issues. If you observe performance issues with collection of dependents, see CS99609 and CS16012 for additional information.
The out of the box WVS dependency tracing publish.retrievallfiles=all setting is only needed for non-filesync CAD workers and can result in longer than necessary publishing times and put unnecessary load on the server and database. If you're using filesync workers (most customers are or should be!), make this setting for improved performance. See CS76293 and CS34783 for additional information.
This setting keeps the network port between a client and server open longer than the 5 or 15 second default and allows the client to reuse an open network connection for up to 60 seconds. As a result, response times for SSL and HTTP connections is improved. As a side benifit, Internet Explorer doesn't work well with KeepAliveTimeout values ≠ 60. Setting this value to 60 will reduce the number of offline client sessions as well. See CS19706 and CS65884 for additional detail.
The Methodserver and database will in most cases try to process all requests that are made regardless of whether or not the request may overload the Methodserver and database. Making a couple changes to db.properties can improve performance as it prevents high load, long running transactions from consuming all resources.
The Windchill database is a primary component in any Windchill installation as requests made to the Windchill Methodserver invariably have to be processed by the database. Having a properly sized (enough memory) and functioning database (proper database indexes) is key to good overall performance.
The database frequently is a performance bottleneck when Windchill is processing information for CAD objects. Start with CS75632 and CS151400 for Windchill 9.1 installations and CS98135 for Windchill 10.0, 10.1 and 10.2 installations as they contain indexes that are known to improve database performance for not only CAD object processing but other operations.
Here's an example of Server Status showing a large amount of time in JDBC (database) calls:
Here's an example of PSM showing a much smaller amount of time spent in the database for a user transaction:
There are many other things that can be done to improve, diagnose and monitor performance. Depending on your environment, some may have a large impact while others may not. Take a look and let me know if you have any questions or comments:
See the following blog post: Configuring Creo Parametric and Windchill Workgroup Manager Clients for CAD Data Management Performa...
Staging and maintaining File Servers can be a bit more involved from an administration perspective but for WAN users, being able to upload and download content from a local File Server is a big benefit. See Windchill Vaulting and Replication Planning - Technical Brief for additional information.
Customers with many users can easily generate enough activity that a clustered Windchill environment (configuring multiple machines with multiple Method servers) to service client requests is necessary. See Windchill Architecture Overview for additional information.
Even if you have WAN File Servers that are local to WAN users, WAN clients still interact with the master Methodserver over the WAN for all information and requests other than content. If you latency is high (eg. 250+ ms) and bandwidth low, consider implementing caching proxies and WAN accelerators to improve interaction with the Windchill server. Refer to WAN Accelerators and Windchill Performance - Technical Brief for additional information.
PSM is free and powerful tool available that can be used to easily monitor activity and performance of Windchill servers. Refer to the following for more detail:
Last but not least, collecting a benchmark of system performance before and after tuning is important as it allows you to gauge the impact of your tuning activity. Collect detail and/or test with a standard Creo dataset available from PTC and review posted results from PTC QA. See the following for additional detail:
If benchmark results with the Windchill Creo Data Management Performance Benchmark Test Dataset are not close to or better than PTC QA results reported in the Windchill Creo Data Management Performance Benchmark Test - Data Sheet or performance with other datasets does not meet expectations, collect Performance task detail from System Configuration Collector (Windchill System Configuration Collector (SCC) FAQ) along with test results and contact Technical Support.
That's it! I hope you find this information interesting and of use. As always, comments and feedback are very welcome.
one question to your statement:
For releases prior to 10.2 M030, avoid default table displays with additional status columns
Has anything changed here in 10.2 M030? Any documentation for this?
We are still struggling with workspace performance. Any improvements here would really help in our daily working.
As a result, you'll see client refresh improvements for some scenarios and a new pair of Windchill preferences that allow for additional configuration:
CS114668 - Best Practices Regarding Workspace Management also has some good recommendations.
What Windchill and Creo or WWGM releases are you using?
If you benchmark with the Windchill Creo Data Management Performance Benchmark Test dataset, are the times reported for Add to Workspace or Refresh close to that reported by PTC QA in Windchill Creo Data Management Performance Benchmark Test - Data Sheet?
thanks for the information.
One more question: filtering objects in Workspace with "Search in table" does not really improve Workspace performance (refresh+synch). Is there an explanation for this?
Search in table is a post refresh action (eg. you request an update/refresh of the workspace, the server/client processes the request and then the client filters the content of the workspace based on your "search in table" criteria).
I would instead suggest you use the "As Featured Objects list" functionality:
It acts as a client filter reducing the amount of information the client and server needs to process.
I had modified the default views for search results, product folders, and workspace when we deployed PDMLink 10.2 M010 two years ago. Now I am investigating 11.0 M020 and the pencil is no longer there for system views, even as admin. I checked back on my 10.2 now-M030-CPS13 server and the pencil is also gone! What happened to it? I have extra columns for our IBA's in all the system views but I can no longer change them?!?!?
It sounds like you're no longer an Administrator, ownership of table views has changed or something like https://support.ptc.com/appserver/cs/view/solution.jsp?n=CS230858. I'd suggest opening a case with Technical Support to investigate further (https://support.ptc.com/appserver/cs/case/case_logger.jsp)
Thanks for the response. I did open a call and they actual found the exact same call I had logged in July of 2015 when I previously had the same issue.
In case anyone else experiences this situation hopefully they can find this comment:
I am a site and org admin, but I have configured our Windchill servers with a corporate LDAP JNDI adapter to authenticate users against our Active Directory server. This prevents the editing of system views. I think it is because there is an "Administraors" group in AD and Windchill, and the wrong group is being used to determine my edit rights for system views. When I disable the AD adapter, and restart Windchill (and log in as a local account not from AD, like wcadmin), I can once again edit system views. It's strange that this seems to be the only side effect. But that is the root cause.