cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Need to share some code when posting a question or reply? Make sure to use the "Insert code sample" menu option. Learn more! X

Windchill 12 Sizing Guidlines for Virtualization Server Environments

LawrenceS
18-Opal

Windchill 12 Sizing Guidlines for Virtualization Server Environments

Summary:

  • How to interpret and optimize the PTC requirement for physical processors in a virtualized (Windows) OS environment?
  • e.g. if the requirement is 10 physical cores how should the virtual processor sockets/cores/threads be configured?

PTC Reference Documentation

---------------

Details:

It seems to me that at this point virtualized Windchill servers are no longer uncommon.  However, when reading the PTC recommended minimum server requirements documentation, it is not clear to me how to interpret the requirements specifically for virtual processors. 

 

Physical processors are broken down by:

  1. Processor sockets,
  2. Cores
  3. Logical processors/threads

However, even though the virtualized Windows environment uses the same terminology, that isn't really what is happening when we are talking about 'virtual' processors.  In my current understanding, of a virtualized system (and loosely speaking) what the OS recognizes as

  • Processor sockets are more akin to cores
  • Cores are more akin to threads. 
  • Threads are usually 1 thread for every core.

Additionally, my understanding is that in a virtualized environment:

  • Thread count is the only thing that matters. 
  • Usually, it is 1 "socket' to 1 "core" to 1 "thread".
  • So if you need 10 threads, then you usually designate 10 'sockets'
    (10 sockets x 1 core/socket x 1 thread/core = 10 threads)

However, WC documentation doesn't specify # of threads as a requirement, it specifies # of cores as a requirement, yet  >= 2 threads/core is common. The PTC docs also specify that MANY threads for each core can cause problems.

  • Should I assume that there are 2 threads/core (because most common on Xeon processors) in the calculation? 
    • For example, if the requirement is 10 cores, then this would mean that 20 processor 'sockets' should be defined
      (OS would see 20 sockets x 1 core/socket x 1 socket/core)
  • Will this method of 1 core/socket cause problems for WC (performance or buggy)?
  • Is this optimized for WC, such that we are getting the most stability and performance 'bang for the buck'?

This came up partially related to some performance issues, but more generally want to make sure we are optimizing for performance, stability, and cost.

 

Environment:

  • Windows Server
  • Windchill 12.0.1 (application & database servers)
  • SQL database

 

 


"When you reward an activity, you get more of it!"
ACCEPTED SOLUTION

Accepted Solutions
TomU
23-Emerald IV
(To:TomU)

Excellent article here on sockets vs. cores.  Looks like there are indeed some best practices to follow in this area.

https://blogs.vmware.com/performance/2017/03/virtual-machine-vcpu-and-vnuma-rightsizing-rules-of-thumb.html

 

 

View solution in original post

3 REPLIES 3
TomU
23-Emerald IV
(To:LawrenceS)

Not sure about other hypervisors, but for VMware there is no performance difference between cores and sockets.  Sockets were simply added for licensing purposes since a lot of software is (or used to be) licensed based on CPU sockets.  

 

PTC's sizing guides are inconsistent, and some of them haven't been updated for many years.  They can provide a starting point, but you're better off monitoring performance and then adding resources where you see bottlenecks.  Not sure how large your environment is, but make sure you are running multiple foreground method server processes.  This really helps keep the system responsive when one user has a long running action (large check in, long running search, etc.)

TomU
23-Emerald IV
(To:TomU)

Excellent article here on sockets vs. cores.  Looks like there are indeed some best practices to follow in this area.

https://blogs.vmware.com/performance/2017/03/virtual-machine-vcpu-and-vnuma-rightsizing-rules-of-thumb.html

 

 

@TomU , thanks for finding and sending this article.  When I was searching non-PTC sources this type of thing looks exactly what I was looking for but didn't find on my own!  It is fantastic. 

 

From what I understand so far, it advises configuring the number of cores per processor, which is contrary to the generic stuff I found which said just configure vcpu and be done with it. 

 

I am wondering now if it is worth getting feedback from PTC on this and if there are any nuances that are worthwhile to be answered by them...  But perhaps this will be answered when I have a deeper understanding of that article.


"When you reward an activity, you get more of it!"
Announcements


Top Tags