Documents
Resources
Learning Center
Upload
Plans & pricing Sign in
Sign Out

Performance Best Practices for Windchill and ProI

VIEWS: 1,847 PAGES: 51

									  Performance Best
Practices for Windchill
and Pro/INTRALINK 8.0
 Pro/ENGINEER Data
     Management
          Victor Gerdes
  Product Management Director
               PTC
 Performance Best Practices for Windchill and
   Pro/INTRALINK 8.0 Pro/ENGINEER Data
               Management
 Description:
 Whether you are new to the Windchill
  technology platform of Pro/INTRALINK 8.0 are
  using Windchill PDMLink or ProjectLink, join
  this session for an introduction to Windchill
  architecture, to learn the factors affecting
  system performance, and what performance
  best practices you can implement and follow
  for optimal Pro/ENGINEER Wildfire productivity
  for product development.
Performance Best Practices for Windchill and Pro/INTRALINK 8.0
Pro/ENGINEER Data Management

Objective
  Provide a basic understanding of
   – The Windchill architecture,
   – The factors affecting performance,
   – General performance best practices
   – Where to begin to isolate and diagnose performance problems
  Provide an overview of performance best practices for Windchill and
  Pro/INTRALINK 8.0 Pro/ENGINEER Data Management




                                                                        © 2006 PTC
Performance Best Practices for Windchill and Pro/INTRALINK 8.0
Pro/ENGINEER Data Management

Contents
  What is Performance?
  Introduction to the Windchill Architecture
  Common Performance Bottlenecks
  Performance Best Practices
  References
  Summary
  Appendix
   – Isolating and Diagnosing Performance Problems




                                                                 © 2006 PTC
What is Performance?

The different dimensions of performance:
  Single user performance
  Multi-user performance
  Scalability - Ensures that application scales. E.g. uses resources
  correctly
  LAN/WAN
  Time of day – variations in loading
  User Expectation (Pro/INTRALINK 3.x? LAN? WAN?)
Productivity = Performance + Usability
  Good training can only help!




                                                                       © 2006 PTC
Pro/INTRALINK 3.x System Architectural Overview

                                 Pro/ENGINEER       Workspace
                                     Wildfire
                                                                     Client
                                                                       Tier




                             Intralink 3.x Server                 Application
                                                                         Tier
                                 Commonspace




                        Oracle
                                                                   Database
                             RDBMS Database         File Vaults         Tier


                                                                         © 2006 PTC
Windchill System Architectural Overview

  Web Browser       Pro/ENGINEER
                        Wildfire
                                                                                              Client
                                                                                                Tier


       Apache                        Tomcat

             Web Server                     Servlet Engine




                                            Windchill Server                               Application
                                                                                                  Tier
                                            Server Manager

                                            Method Server




         Aphelion                  Oracle
                                                                                            Database
                LDAP Database           RDBMS Database         Cache Vault   File Vaults         Tier


                                                                                                © 2006 PTC
Pro/ENGINEER Wildfire Work Group Manager Architecture Components

  The next few slides will cover the following major
  Pro/ENGINEER Wildfire architectural components in more
  detail:
  File Management
      File Abstraction
                                          Windchill Server
      Location
      Cache
  Communications                                http

      SOAP Services            Cache
                              storage

                              Data
                             storage

                            Workstation     Pro/ENGINEER
                               Disk            Session




                                                                   © 2006 PTC
File Management Architecture
Pro/ENGINEER Wildfire Work Group Manager

File Abstraction
    Pro/E uses file system files to
    persist model data (e.g. “.prt”,
    “.asm”)                                                                           Pro/ENGINEER
                                                                                      application
    Pro/E Wildfire added “location”                                                   layer
    drivers for Internet Locations (ftp,
    http, Windchill)                                                                  Location independent
                                                                PFA                   abstract file
     –Allows existing Pro/E functionality                                             management layer
      (e.g. “Component->Assemble”) to be
      extended to Internet locations                                                  Location specific
                                                                                      driver
     –Pro/E requests a file from a “location”
      & the driver implements the logic to      Disk      FTP    HTTP     Windchill
      get the file for Pro/E

                                              Existing           New drivers
                                            file system          added with
                                                driver          Pro/E Wildfire




                                                                                                  © 2006 PTC
Location Drivers
Pro/ENGINEER Wildfire Work Group Manager

Declaring a New Location
    Location drivers get initialized by Pro/E
    when a user adds a new “Location”
                          1. Select
                          “Tools-> Server Registry”



                                    2. Select “Add”

                             3. Enter an alias
                                And the server URL



     The new location now appears to                  ProjectLink Project
     Pro/E as a new “disk” and is
     accessible through File->Open, File-             PDMLink Server
     >Save, Component->Assemble etc.
     making the nature of the location                Second PDMLink Server
     transparent to the Pro/E user.
                                                      Windchill Foundation Server

                                                      FTP Site

                                                      Hard Disk
                                                                            © 2006 PTC
 Caching
 Pro/ENGINEER Wildfire Work Group Manager

 Pro/ENGINEER Wildfire utilizes a cache to:
         Improve system responsiveness
         Optimize data upload/download
         Ensure data integrity                                                      Windchill Server


                        1. User chooses
                        File->Checkin     3. User can continue
                        from Pro/E menu   to work in Pro/E                                http


2. Pro/E writes the
data to the cache                                    4. Pro/E uploads the data
                                                     in a background thread(s)



        Cache
                       Pro/ENGINEER
                          Session                   5. Results of the transaction
       storage                                      are written to the Pro/E console


       Data
      storage

    Workstation
       Disk


                                                                                                       © 2006 PTC
File Management Architecture – Caching
Pro/ENGINEER Wildfire Work Group Manager



                                                    Windchill
                                                     Server
                                      Cache
                                     storage

                    Pro/ENGINEER   Workstation   Private   Shared
                       Session        Disk       Folder    Folder



    Save
    Upload

    Checkin

    Save & Upload

    Download

    Checkout




                                                                    © 2006 PTC
Architecture: Runtime View (Open in Pro/E)
Pro/ENGINEER Wildfire Work Group Manager


   Client (Pro/Engineer)                                            PDMLink Server
                               Pro/ENGINEER               Workspace
                                  Session

                                Pro/ENGINEER
                               Opens from cache

                                         N                                       Y
                  In                                   In
                Cache?             Retrieve from   Workspace?
                                                                           Retrieve from
                                    Workspace                               Workspace



                               Y
                         Retrieve from
                             cache

                                                          Windchill Public Folder
                Cache
               storage
                                                                       N
                                                                    Add to
                                                                workspace from
                                                                 Public Folder




                                                                                           © 2006 PTC
Architecture: Runtime View (Open from html page)
Pro/ENGINEER Wildfire Work Group Manager


      Client (Pro/Engineer)                                   PDMLink Server

                                  Java
                                 Script
                                 Bridge
        Open in Pro/Engineer                  Download

            JScript.OpenModel
               (http://URL)                                   Download
                                                               Service
                                            Metadata and
                                            URL for content

                                              URL

                                  Client
                                Connector                       Replica Site
                                            CAD files

                                                                               © 2006 PTC
Communications Architecture
Pro/ENGINEER Wildfire Work Group Manager

Communications to the server use the built-in browser
    All communications to the server use the browser‟s TCP/IP connection
    Only http (or https) is used (no Java RMI*)
    Pro/E can call the browser programmatically
    The browser can load pages that call Pro/E programmatically
    Authentication is through the browser
Remote calls are made to the server using (SOAP)
    SOAP = “Simple Object Access Protocol”
    XML over http allows structured data to be sent to the server…




*Except if required by Windchill applets

                                                                           © 2006 PTC
Communications Architecture - S.O.A.P Example
Pro/ENGINEER Wildfire Work Group Manager
       User Opens the
         “File Open”                                          SOAP Services on
            dialog                                          the server receive the
      In Pro/E to find a                                    request, deserialize it
            model                                              and execute the
         In Windchill                                     appropriate Java Methods


     To get the contents       <SOAP->                     Java Classes query the
     of the folder, Pro/E      <>                           database and return
         writes out a          <get-contents…>                   the results
        SOAP request           </get-contents>
       and sends it to         <…>
         the browser           </SOAP>
                                                 http       Results are serialized
                                                           into SOAP and returned
   The browser forwards
                                                                 to the client
       the request to
         the server
                                                   http                  <SOAP->
                                                                         <>
                                                                         <…>
                                                                         <>
      Pro/E deserializes                                                 </SOAP>
   the SOAP message into
       C++ Classes and
    displays the result into
  the File->Open dialog box



                                                                                      © 2006 PTC
Performance Best Practices for Windchill and Pro/INTRALINK 8.0
Pro/ENGINEER Data Management

Contents
     What is Performance?
     Introduction to the Windchill Architecture
     Common Performance Bottlenecks
     Performance Best Practices
     References
     Summary
     Appendix
      – Isolating and Diagnosing Performance Problems




                                                                 © 2006 PTC
Method Server
Common Performance Bottlenecks

  From the Performance Checklist,
  Chapter 6 of Windchill Performance
  Tuning Guide
    Method Server CacheManager
    Cache Sizing
    Method Server database connection
    pool too small.
    Method Server JDBC Statement cache too small.
    Configure a minimum of one Background MethodServer
    and one MethodServer.
    Excessive Garbage Collection frequency or duration.
    Method Server or Tomcat heap too small or generations
    sized incorrectly
    MethodServer or ServerManager log tee is set true when
    the processes are not attached to terminals and the
    stdout/stderr have not been redirected.

                                                             © 2006 PTC
Oracle Database, LDAP, and Vaulting
Common Performance Bottlenecks

From the Performance Checklist,
Chapter 6 of Windchill Performance
Tuning Guide
  Missing index in Oracle or LDAP
  Oracle Cost Based Optimizer
  chooses wrong execution plan.
  Reason: Missing or absent statistics.
  Oracle Statistics. Ensure that the schema statistics are up to date. PTC
  recommends that the schema statistics be gathered and updated on a regular
  basis. See Windchill performance tuning guide for details.
  Use of BLOB Oracle tablespace versus FileVault.
  Excessive Oracle result set size. Wildcard or „open-ended‟ queries?
  Oracle SGA and/or PGA sized too small
  Database disk I/O




                                                                         © 2006 PTC
Network & Clients
Common Performance Bottlenecks

Network
  Network latency
   – Enable compression in web server
   – Enable Meta-data compression
  Check latency between application
  & database tiers
Client
  CPU saturation
  Web browser performance
  Client jar files missing resources




                                        © 2006 PTC
Performance Best Practices for Windchill and Pro/INTRALINK 8.0
Pro/ENGINEER Data Management

Contents
     What is Performance?
     Introduction to the Windchill Architecture
     Common Performance Bottlenecks
     Performance Best Practices
     References
     Summary
     Appendix
      – Isolating and Diagnosing Performance Problems




                                                                 © 2006 PTC
Performance Best Practices

Architecture & Configuration          WAN Performance
  System Architecture                   Replica Servers
   – Application and Database Tiers     Compression
   – Hardware Sizing                  Performance Maintenance
   – Method Servers
                                        Measuring / Tracking Performance
   – External Vaulting
                                        Oracle Tuning
                                        Cost Based Optimization (CBO)




                                                                           © 2006 PTC
Separate Application and Database Hosts
System Architecture


    Apache                     Tomcat

          Web Server                  Servlet Engine




                                      Windchill Server

                                      Server Manager


                                                                                     Application
                                      Method Server
                                                                                            Tier




      Aphelion               Oracle
                                                                                      Database
             LDAP Database        RDBMS Database         Cache Vault   File Vaults
                                                                                           Tier


                                                                                         © 2006 PTC
Hardware Sizing Guidelines
System Architecture

Hardware Sizing Guidelines                   Until Now…

  Vendor Specific Server                       CAD Recommendations
  Recommendations for                           – Provided by PTC GSO

   – Application Tier                           – Based on internally run automated multi-user
                                                  CAD tests with a production representative
                                                  database
   – Database Tier
                                               Non-CAD Guidelines
   – Memory
                                                – Available today from some Hardware
   – Note: Client is primarily dictated by        Vendors
     Pro/ENGINEER requirements
                                             Now Available
  Function of Number of Users                  Vendors provide Hardware Sizing
   – Number of CAD Users                       Guidelines
                                               Based on PTC supplied automated multi-
   – Number Non CAD Users                      user CAD tests with a production
                                               representative database




                                                                                        © 2006 PTC
How to Size a PDMLink/ProjectLink Server

  Variables
      W= Number of named CAD users that the system will need
      to support
      X= Number of named non-CAD users that the system will
      need to support
      Y= Number of active CAD users = W*.25
      Z= Number of active non-CAD users=X*.20
      A= Weighted number of active users=4Y+Z
  Steps
      Find the weighted number of Active Users in column one on the
      appropriate table                                                            Weighted    Sun Solaris     IBM AIX      HP HPUX      Windows
                                                                                   Number      SPARC IV+      POWER5        PA-8900       [single
                                                                                   of Active   [dual core]   [dual core]     [single       core]
      Scan across horizontally for the number of CPUs and memory required           Users      (CPU/RAM)     (CPU/RAM)        core]     (CPU/RAM)
                                                                                                                           (CPU/RAM)
      for the application tier and the DB tier for the specific platform you are      10           1/2           1/2          1/2           2/4

      using                                                                           25
                                                                                      50
                                                                                                   1/2
                                                                                                   2/4
                                                                                                                 1/2
                                                                                                                 1/2
                                                                                                                              2/4
                                                                                                                              2/4
                                                                                                                                            2/4
                                                                                                                                            2/4
                                                                                      100          2/4           2/4          2/4           4/8

      We recommend rounding up to the next row for any result that falls              200
                                                                                      300
                                                                                                   4/8
                                                                                                   4/8
                                                                                                                 2/4
                                                                                                                 4/8
                                                                                                                              4/8
                                                                                                                              4/8
                                                                                                                                            4/8
                                                                                                                                           6/12

      between 2 numbers in the table                                                  400
                                                                                      500
                                                                                                   4/8
                                                                                                  6/12
                                                                                                                 4/8
                                                                                                                6/12
                                                                                                                              6/12
                                                                                                                              8/16
                                                                                                                                           8/16
                                                                                                                                           10/20
                                                                                      600         6/12          6/12          8/16         10/20
                                                                                      700         8/16          6/12          8/16         12/24
                                                                                      800         8/16          8/16         10/20         14/26
                                                                                      900         10/20         10/20        10/20         16/28
                                                                                     1000         10/20         10/20        12/24         18/30




                                                                                                                                    © 2006 PTC
Windchill 8.0 Hardware Sizing Example for a Medium Size Company
  Company C needs a server that will support 500 total users, of
  which 300 are non CAD users and 200 are CAD users
      W= Number of named CAD users that the system will need to
      support=200
      X= Number of named non-CAD users that the system will need to
      support=300
      Y= Number of Active CAD users = W*.25=50
      Z= Number of Active non-CAD users=X*.20=60
      A= Weighted number of Active users=4Y+Z=4*50+60=260
  Recommendation
      For a IBM AIX platform
        – Application Tier: 4 CPUs with 8 GB of RAM
        – DB Tier: 2 CPUs with 4 GB of RAM
      For a Windows platform
        – Application Tier: 6 CPUs with 12 GB of RAM
        – DB Tier: 4 CPUs with 6 GB of RAM


                                                                      © 2006 PTC
Background Method Server
System Architecture
                   A Background Method Server may be configured to process all background queues.
                         This leaves the (Foreground) Method Server to process client requests

      Apache                                Tomcat

            Web Server                             Servlet Engine
                                                                                            Client Requests Only


                                                   Windchill Server                          Background Queue
                                                                                              Processing Only
                                                   Server Manager


                                                                                                       Application
                                          (Foreground) Method Server
                                                                                                              Tier


                                          Background Method Server




        Aphelion                          Oracle
                                                                                                        Database
               LDAP Database                   RDBMS Database           Cache Vault      File Vaults         Tier


                                                                                                            © 2006 PTC
Multiple Method Servers
System Architecture
                    Multiple Foreground Method Servers may be configured to process client requests.
                          The Server Manager will decide how to distribute the load between them

       Apache                                Tomcat

             Web Server                             Servlet Engine
                                                                                                 By default, Method
                                                                                                Servers are selected
                                                                                                for each request by
                                                                                                    round-robin
                                                    Windchill Server

                                                    Server Manager


                                                 Method Server                                            Application
                                                  Method Server
                                                    Method Server                                                Tier


                                            Background Method Server




         Aphelion                          Oracle
                                                                                                           Database
                LDAP Database                    RDBMS Database            Cache Vault      File Vaults         Tier


                                                                                                               © 2006 PTC
Content Storage
System Architecture

  Web Browser       Pro/ENGINEER
                        Wildfire
                                                                                            Client
                                                                                              Tier


       Apache                        Tomcat

             Web Server                     Servlet Engine




                                            Windchill Server                               Application
                                                                                                  Tier
                                            Server Manager

                                            Method Server




         Aphelion                  Oracle
                                                                                            Database
                                                               Cache Vault
                LDAP Database           RDBMS Database                       File Vaults         Tier


                                                                                                © 2006 PTC
Vaulting and Force-to-Vault Setting            Cache Vault
                                                             File Vaults
System Architecture

Storing Content in Vaults is More
Performant than BLOBs
   Unisys Performance Benchmark
    – Create Document in External Vault
      was up to 45% faster than BLOB
    – Checkout Document from External
      Vaults was up to 54% faster than
      BLOB
   DB Connections
    – db connections are very valuable
      resources
    – Not very easy to increase the number
      of connections
    – Even if blobs performed comparably it
      is still better to use external vaults
      when considering total system
      performance




                                                                           © 2006 PTC
Vaulting and Force-to-Vault Setting                                     Cache Vault
                                                                                      File Vaults
System Architecture

Storing Content in Vaults is More              Single Vault (Cache Vault) Configuration
Performant than BLOBs
                                                 Vaulting Rules for Folders Made Sense with
   Unisys Performance Benchmark                  Pro/INTRALINK
    – Create Document in External Vault          Windchill Cache Vault created during installation
      was up to 45% faster than BLOB
                                                  – wthome/vaults – initial folder for cache vault
    – Checkout Document from External
      Vaults was up to 54% faster than           Force to Vault for Windchill
      BLOB
                                                  – Optimal Content performance
   DB Connections
                                                  – Once transferred to the server Content NEVER has to be
    – db connections are very valuable              moved
      resources
                                                  – One vault configiuration skips vaulting rule checks
    – Not very easy to increase the number
      of connections                              – There is no reason NOT to have a single vault
    – Even if blobs performed comparably it       – Need to set up many file system folders to support the
      is still better to use external vaults        cache vault
      when considering total system
      performance                                 – Set to False with F000
                                                  – Set to True with M010
                                                  – Possible to reconfigure an implementation from multiple
                                                    vaults to a single vault (PTC Documentation)
                                                 Vaulting Rule the User Domain
                                                  – Ensures that content of user workspaces are vaulted
                                                                                                     © 2006 PTC
Content Cache Servers
WAN Performance
                        Content Cache (Replication) Servers may be configured at remote sites.
     These allow users at these sites to access content from a local server, greatly reducing access time across WANs



     Web Server             Servlet Engine
                                                                                 Windchill Replica Server

                                                                                    Server Manager
                           Windchill Server

                           Server Manager
                                                                                     Method Server

                            Method Server

                                                                                                            File Vaults




                                                                                 Windchill Replica Server
       LDAP Database       RDBMS Database        File Vaults
                                                                                    Server Manager


                                                                                     Method Server




                                                                                                            File Vaults




                                                                                                                     © 2006 PTC
Content Replication and Local Upload
                                                                     Content Cache
WAN Performance                                                         Server
                                                          Content
                                                                               Local
                                                         Replication
                                                                              Upload

Content Replication
                                             Windchill
  Content Cache Server                                      Site 1         Site
                                                                            2
  Local Upload                                              LAN
                                                                     WAN
Capabilities
  Enables uploading of content to local Windchill Content Cache Server (“CCS”,
  aka. replica server)
  Supports end-user checks-in, uploads, and creation of new objects
  Access to locally uploaded content is provided as soon as the content is
  successfully uploaded to the CCS and metadata is uploaded to master Windchill
  server
  Content upload triggered two ways:
   – Content scheduling rules
   – Request by a user with download preference set to the master or different site.
  Secure and guaranteed delivery of content to master Windchill server
  Enables ad hoc storage of content on CCS without Content Replication Rules
                                                                                       © 2006 PTC
           Meta-data Compression (Upload/Download)
           WAN Performance
                                            WAN Download Family Tables                        WAN Download of Pro/ENGINEER
                                                                                                  Family Table Meta-Data
          700.0


                                                                                        Comp = 9
                                                                                                   Download times for
          600.0                                                                                    larger family tables
                                                                                                   decreased by 26-
                                                                                                   43% with
          500.0                                                      Results indicate
                                     Comp = 0
                                                                     optimal average               compression
                                                                   compression setting
          400.0                                                    of 4-5 for simulated
Seconds




                                                                     network quality                 FT50 - Download
                                                                                                     FT250 - Download
                                                                                                     FT650 - Download
          300.0
                                                      Comp = 1          Comp = 5


          200.0                      Comp = 0                                                                      Meta-Data
                                                                                                                               %   Meta-Data
                                                                        Comp = 5
                                                      Comp = 1                          Comp = 9
          100.0     LAN

                                                                                                                    Content        Content
                    LAN                               Comp = 1          Comp = 5
                                     Comp = 0                                           Comp = 9
                    LAN
            0.0
                  LAN           Comp = 0         Comp = 1          Comp = 5        Comp = 9
                                           Network / Compression



                          Latency = 100-200, Packet Loss = 3%, Bandwidth = 1544kbps (T1)
                                                                                                                                    © 2006 PTC
Performance Maintenance

Measuring / Tracking Performance
     Highly recommend to implement regular (weekly) performance
     testing
     Track regular performance testing results
     Early identification and resolution of performance changes
Oracle Tuning
     Cost Based Optimization (CBO)
     Windchill Oracle Tune Up Package introduced in 8.0 M010




                                                                  © 2006 PTC
Cost Based Optimization (CBO)
Oracle Tuning

Oracle Cost Based Optimization (CBO)
  Run CBO when the Windchill database has been populated with a large sample
  of representative Pro/ENGINEER datasets
   – Run on a regular periodic basis thereafter
  To ensure optimal performance with Windchill R8 and Oracle 9i it is very
  important that the Oracle Cost Based Optimizer has recent statistics.
  With Oracle 10g the generation of statistics will be handled automatically by
  Oracle
  Appendix B of Windchill Performance Tuning Guide provides a script to
  automate the collection of data to ensure that the Oracle Cost Based Optimizer
  has up to date statistics.




                                                                                  © 2006 PTC
Windchill Oracle Tune Up Package (8.0 M010)
Oracle Tuning

Problem
  Most customers‟ performance problems come from out-of-date or missing
  schema statistics or missing indices
New Windchill Oracle Tune Up Package
  Included in Windchill 8.0 M010
  Big performance gains come from using the right Indexes
  No help when the statistics are missing (needs CBO)
  Setting the Oracle tune-up package will gather the Windchill schema statistics
  then regularly update the schema statistics periodically thereafter.
We want your feedback to make the Oracle Tune Up Package better
  The alert.log(s) record the index and memory usage
  We are interested in putting a mechanism in place to receive your feedback via
  the alert.ogs.




                                                                              © 2006 PTC
Where to turn for Windchill Performance Tuning Help
References

             Publications
                                                    Workgroup Manager Performance
             Windchill Performance Tuning Guide     Best Practices Guide
             (PTG)                                  http://www.ptc.com/WCMS/files/31802en_
                                                    file1.pdf
             This guide assists you with:
                 •   Measuring performance and      Product Development System
                     scalability                    Configuration Notes
                 •   Improving server performance      PDS6
                 •   Improving client performance          (http://www.ptc.com/WCMS/files/
                 •   Tuning the database and               31461en_file1.pdf)
                     customized applications
                 •   Troubleshooting




                                                                                             © 2006 PTC
Windchill / CAD Performance Tuning TPI 132477

Performance Tuning Recommendations For Client Systems And Windchill
Servers That Manage CAD Models
  Contains initial performance tuning recommendations that should be set on the server and
  client when working with CAD datasets. It was derived from what has been learned since
  8.0 was released.
   http://www.ptc.com/appserver/cs/view/solution.jsp?n=132477)
  Complex CAD datasets and WAN network topologies usually require additional tuning on
  both the client and server to ensure that performance is optimal. The following is a
  summary of initial performance tuning recommendations that should be made on both the
  client and server. As every implementation and environment is unique, some settings may
  or may not apply. Use only those that are applicable to your environment.
  See the following documents for specific instructions or additional information
  (http://www.ptc.com/appserver/cs/doc/refdoc.jsp):
   – Windchill Performance Tuning Guide
   – Windchill System Administrator's Guide
   – Workgroup Manager Performance Best Practices Guide
   – Windchill PDMLink Performance Best Practices for Windchill Pro/ENGINEER Data Management
   – Workgroup Manager for <3rd Party CAD Application> Installation and Configuration Guide

  Contact Technical Support or PTC Global Services for additional tuning assistance.


                                                                                              © 2006 PTC
Windchill / CAD Performance Tuning TPI 132477




Performance Tuning Recommendations For Client Systems And
Windchill Servers That Manage CAD Models
  Contains initial performance tuning recommendations that should be set on the
  server and client when working with CAD datasets. It was derived from what has
  been learned since 8.0 was released.
   – http://www.ptc.com/appserver/cs/view/solution.jsp?n=132477)
                                                                           © 2006 PTC
Windchill / CAD Performance Tuning TPI 132477
Client Property Settings & General Client TANs




                                                 © 2006 PTC
Windchill / CAD Performance Tuning TPI 132477
Client Property Settings & General Client TANs




                                                 © 2006 PTC
Performance Best Practices for Windchill and Pro/INTRALINK 8.0
Pro/ENGINEER Data Management

Summary
There are many dimensions to performance
  Single user, Multi-user, Scalability, LAN/WAN, etc
Optimal Performance
  Begins with the appropriate architecture
  Depends on system resource availability and allocation
   – Memory, memory allocation, cache configurations, garbage collection, server I/O, intra-server
     latency, system hardware, and network resources
  Requires regular monitoring
  Requires regular maintenance and periodic tuning
PTC has proven tools and methodologies for isolating and diagnosing
performance problems, e.g. The Windchill Performance Tuning Guide (PTG)
There are tools with Windchill 8.0 M010 and new Tuning Recommendations For
Client Systems And Windchill Servers That Manage CAD Models to make it easier
to maintain optimal performance



                                                                                                     © 2006 PTC
Thank You!
Isolating and Diagnosing Performance Problems


Windchill Performance Tuning Guide (PTG)
  The Windchill Performance Tuning Guide is designed to help improve the
  performance and scalability of the Windchill system.
  This guide assists you with performing the following types of work:
   – Measuring performance and scalability
   – Improving server performance
   – Improving client performance
   – Tuning the database and customized applications
   – Troubleshooting
  Windchill Performance Tuning Guide – New Version Available with 8.0 M010
   – (Administrator, Developer) - English
     The Windchill Performance Tuning Guide is designed to help improve the
     performance and scalability of the Windchill system.
   – http://www.ptc.com/WCMS/files/24289en_file1.pdf


                                                                              © 2006 PTC
Isolating and Diagnosing Performance Problems
Windchill Performance Tuning Guide (PTG)

Windchill Properties
  There are two types of Windchill properties discussed in the PTG document.
   – The first type is used to enable logging of performance metrics. These properties are
     referred to as “Logging Properties”.
   – The second type of property affects the behavior of the application and is referred to as
     „Tunable Properties‟.
Tuning
  Tuning any tier in the system should be performed in a systematic manner.
  Prior to adjusting any of the tunable properties described in the PTG document
  it is necessary to collect empirical data from the various applications.
  Only when sufficient data has been collected can the performance analyst
  decide which (if any) of the tunable properties are applicable.
  Compare the log files at each stage in the tuning process to record the effect of
  changes in tunable property values.




                                                                                         © 2006 PTC
Isolating and Diagnosing Performance Problems
 Windchill Performance Tuning Guide (PTG)

Where to begin when there is a performance problem?
  Performance Checklist, Chapter 6 of Windchill Performance Tuning
  Guide
Performance Checklist
  A checklist that describes some of the more common issues that may be
  resolved by tuning
Troubleshooting flowcharts
  Response Time Diagnosis
  System Performance Diagnosis




                                                                     © 2006 PTC
Basic Steps for Isolating and Diagnosing Performance Problems

Quantity the specific user visible symptom of the performance issue
Determine what is taking up resources
Try to allocate more resources where appropriate
When confined, improve the database’s performance by running built in
tools
Finally, optimize the application’s use of the database
  Attempt to improve the way the database is addressed (JDBC connection)
  Remove Blobs (Replicated Vaults)
  Improve the efficiency of the SQL by
   – Tweaking memory settings (for a higher Hit Ratio)
   – Optimizing Queries (Use the new Windchill Oracle Tune Up Package in 8.0 M010)




                                                                                     © 2006 PTC
Windchill Performance Tuning References

Product Development System Configuration Notes
  PDS6 (http://www.ptc.com/WCMS/files/31461en_file1.pdf)
  Has a Performance Component (Component 30)
   – Obtain Good Cost-based Optimizer Decisions from Oracle
   – Promote More Statement Reuse
   – Reduce Memory Leaks and Static Footprint
   – Increase the Java Heap Size for Tomcat Start Command
   – Increase the Java Heap Size for Method Server Start Command




                                                                   © 2006 PTC
  Performance Best Practices for Windchill Pro/ENGINEER Data
  Management Performance
                                                                     3
                                          4       11    14
              5
                                                  Oracle
                    2
              10                                        A
                                                                                     Content Cache
              12                                                     7                  Server
                                          1 Ext. Vault       8
                       Method Server(s)                                                              Method Server
                                                    B                                   A       B

                                                                                                             LAN
                                                                                                       8
                                                                 6
                                              %                                             %
                                                                                                                     Work Group Manager for
Meta Data Content                                                        Windchill
                                                                                                           13           Pro/ENGINEER
                                                                         PDMLink

1. External Vaulting                                                      7. Content Replication For WAN Clients
2. Additional Method Servers And Background Method Servers                8. Local Upload For WAN Clients
3. Vaulting Rule for EPM Documents                                        9. Method Server Max Heap Size
4. Oracle Cost Based Optimization Tool                                    11. SQL Statement Cache Size
5. Initialize Upload Services After Method Server Startup                 12. Online Java Performance Guide
6. Upload/Download Metadata Compression Option                            13. Explicitly Setting the WMPro Client’s Temporary Directory
                                                                          14. Index the WfProcess Table




                                                                                                                                   © 2006 PTC
Architecture Goals
Pro/ENGINEER Wildfire Work Group Manager

Internet/Intranet Enabled                                 Loosely coupled client & server
                                                               Use http requests not “hard” API calls
     Firewall safe
                                                                 – Server functionality injected into Pro/E via downloaded
       – Use only standard protocols (http & https) on             pages
         standard ports
                                                                 – Pro/E can connect to different Windchill solutions
       – Server cannot initiate a call to client                   (PDMLInk, ProjectLink etc) and utilize the existing UI
       – Eliminate RMI (use SOAP for complex data                – Enables version interoperability with one version of
         operations)                                               Pro/E able to work with different versions of Windchill

       – Use the browser‟s API for all network            Familiar user model
         communications
                                                               Make use of familiar user interactions
       – Work with proxies and reverse proxies
                                                                 – Bookmarks, hyperlinks, history, forward, back etc.
     Respect customer‟s security models
                                                          Component technology
       – Inherit security settings from user‟s existing
         browser (e.g. Tools->Internet options in IE)          Make use of existing component technology where
                                                               possible
                                                                 – IE, Mozilla
 Rule of thumb:
 “If your browser can do it,
 Pro/E can do it, if your
 browser can’t then Pro/E
 shouldn’t”


                                                                                                                      © 2006 PTC

								
To top