Citrix TechXperts Perth May 2016

Preview:

Citation preview

Citrix TechXpertsPerth - May 2016

JEREMY SAUNDERSJEREMY@JHOUSECONSULTING.COM0413 441 846

Agenda◦Intel Processors◦PowerShell Scripts

Intel Processors◦NUMA - Why is it SO important?◦Cluster-On-Die – The Snoop Mode or Snoop Dogg.◦To Hyper-thread or not - that is the question.◦Oversubscription of vCPU to pCPU – you better pause and think about it before your hosts do!

NUMA◦NUMA is Non-Uniform Memory Access◦It was first introduced in 2007 (circa) with the 1st generation Core i-series Nahalem processors.

Non-Uniform? Is that like casual dress Friday for RAM?◦Memory access times are NOT uniform and depend on the location of the memory and the node from which it is accessed.

Why did Intel move to a NUMA Model?

Intel Haswell and now Broadwell Processors

◦Nahalem & Sandy Bridge processors were a great leap forward.

◦Ivy Bridge, still in many systems today.◦The Haswell and now Broadwell families are outstanding technology when building a High Performance Computing (HPC) platform.

Intel Tock Tick Development Cycle

Haswell EP 2600 V3 Block DiagramMCC 12C/HCC 14C

Snoop Mode Performance Taken from two White Papers:

1) FUJITSU Server PRIMERGY Memory Performance of Xeon E5-2600 v4 (BroadwellEP) based Systems2) FUJITSU Server PRIMERGY Memory Performance of Xeon E5-2600 v3 (HaswellEP) based Systems

Haswell EP 2600 V3 Block Diagram with COD

MCC 12C/HCC 14C

Broadwell EP 2600 V4 Block DiagramMCC 12C/HCC 16C

Broadwell EP 2600 V4 Block Diagram with COD

MCC 12C/HCC 16C

Hyper-threading◦ It was designed to increase parallelism in a compute environment that

is I/O-bound (non-CPU intensive).◦ When enabled hyper-threading presents twice the number of logical

cores to the Operating System.◦ Allows for the parallel execution of multiple threads on the same

physical core.◦ But each physical core contains only a single execution resource.◦ So the two threads scheduled on the same physical core are effectively

sharing the execution resource and clock cycles.◦ Not only this, but the parallel executions run in lockstep.

Hyper-threading – Continued…

◦One logical core represents the physical core and the other represents its hyper-threaded twin. This twin runs at approximately 30% of the performance of the physical one.

◦The CPU Scheduler of any modern Operating System (and Hypervisor) is hyper-threading aware.

◦Application Vendors can query the Operating System to return the real physical cores and ensure their threads are prioritised to these where possible.

Hyper-threading – Continued…

http://wahlnetwork.com/2013/09/30/hyper-threading-gotcha-virtual-machine-vcpu-sizing/

The Analogy of Hyper-threading

Over-subscription◦Having multiple VMs that, when combined, exceed the number of physical cores means that you’re overcommitting the CPU resources.

◦Citrix say that the CPU over-subscription sweet spot is likely somewhere in between 1.5 and 2x.

◦I believe you should be starting at no more than 1.5.

Over-subscription – Continued…

I much prefer to follow a formula from Andy Morgan.◦ Each physical core = 1◦ Each HT core = 0.25◦ Reserve at least one core for hypervisor◦ Don't overcommit until you're running your production workload and can view impact.

The minute you introduce overcommit, you're opening yourself up to periods of instability or no guarantee that workloads will not affect one another.

((number of physical Cores x 1) + (hyper-threaded cores x 0.25) - 1) / vCPUs So on a 12 core/socket system with HT for a XenApp workload with 6 CPUs: ((12 x 1) + (12 x .25) - 1) / 6 = 2 – 3 XenApp hosts per socket at the most

Summary◦Understand your workloads and usage patterns.◦Apply the appropriate CPU architecture and features:◦NUMA◦COD◦Hyper-threading

PowerShell Health Check & Documentation Scripts◦Carl Webster’s documentation scripts◦Sacha Thomet’s health check scripts◦My health check scripts

Carl Webster: http://carlwebster.com

Sacha Thomet: XenDesktop & XenApp 7.x HealthCheck:http://blog.sachathomet.ch/xendesktop-and-xenapp-7-x-healthcheck-oops-i-did-it-again/

Sacha Thomet: PVS –le 7.6 HealthCheck:http://blog.appcloud.ch/citrix-pvs-healthcheck/

Active Directory Health Check & Audit Scripts:http://www.jhouseconsulting.com/

Questions?

Recommended