Asset ID: |
1-72-1923776.1 |
Update Date: | 2017-12-04 |
Keywords: | |
Solution Type
Problem Resolution Sure
Solution
1923776.1
:
Oracle Critical Thread (CT) Optimizations in SPARC Sun4v Based Servers to Enhance Single-Threaded Performance
Related Items |
- Oracle SuperCluster T5-8 Full Rack
- Oracle Database - Enterprise Edition
- SPARC SuperCluster T4-4 Full Rack
- SPARC M5-32
- SPARC T4-2
- SPARC M6-32
- Netra SPARC T4-2 Server
- Oracle SuperCluster T5-8 Half Rack
- SPARC T5-8
- Netra SPARC T4-1 Server
- Netra SPARC T4-1B
- SPARC T5-2
- SPARC T5-4
- SPARC T4-1
- SPARC T4-1B
- SPARC T5-1B
- SPARC T4-4
- Oracle SuperCluster M6-32 Hardware
- SPARC SuperCluster T4-4
- Oracle SuperCluster T5-8 Hardware
- Solaris Operating System
|
Related Categories |
- PLA-Support>Sun Systems>SPARC>Enterprise>SN-SPARC: Mx-32
- _Old GCS Categories>Sun Microsystems>Servers>CMT Servers
|
Describes architectural enhancements in sun4v hardware and software technology, comparing UltraSPARC sun4v S1/S2 (T1/T2/T3) based servers vs. S3- (T4/T5/M5/M6)
In this Document
Applies to:
Oracle SuperCluster T5-8 Half Rack - Version All Versions and later
Oracle SuperCluster T5-8 Full Rack - Version All Versions and later
SPARC T5-2 - Version All Versions and later
SPARC T5-4 - Version All Versions and later
SPARC T4-1 - Version All Versions and later
Oracle Solaris on SPARC (64-bit)
Sun Solaris SPARC (64-bit)
Oracle Server Enterprise Edition - Version: 11.2.0.4 and beyond
Symptoms
You are upgrading, porting, or consolidating applications and databases from older technology to newer and suffer from performance problems as a result. You incorrectly conclude that this is due to porting to SPARC T4 or T5 processor architecture (SPARC S3 core) and unnecessarily decide to use some other platform. This document is intended as an aid to understand the issues from a hardware perspective, and to provide information and references to assist in resolving cases of this nature.
Question: Why is there a perceived issue with porting to SPARC T4 and T5 based systems?
Answer: UltraSPARC T1 and T2 processors (S1 and S2 cores, respectively)introduced the Chip Multi-Threading (CMT) concept and were initially designed and intended for use in highly paralleled throughput computing rather than for single-threaded performance. During the time such servers were being installed and made available most applications were not optimized for parallel multi-threaded computing. This resulted in many service requests and much speculation, and even several white papers. Oracle Development has made many optimizations in both hardware and software since then; however, even on S3-based systems current customers incorrectly arrive at the idea that a perceived performance problem is due to having recently migrated from sun4u to sun4v.
Question: Is there any truth to the rumor that Oracle DB performance is not optimal on current SPARC T4 and T5 based servers?
Answer: None at all. Most often than not, those issues encountered in the past on S1- and S2-based server systems were due to directly porting a database or binary application from sun4u to sun4v without making any changes to optimize, add parallelism to, or recompile the application code. With the introduction of new compilers, software enhancements and the S3-based server products, there is no longer any reason to consider sun4v architecture as 'The Root Cause' of a any single-threaded performance problem.
Ultimately there are many issues that can affect performance after migration. Once obvious pathologies have been eliminated, such as FMA faults or error messages being reported in the hardware or from the operating system, it is recommended to begin with investigating the application as a first step rather than to start off suspecting the new platform.
Changes
This issue typically comes up in any service request where you are porting from sun4u to sun4v, and sometimes in LDOMs/virtualized environments as well.
Cause
Legacy single-threaded applications running on UltraSPARC-III/IV/IV+ (AKA sun4u) based systems being ported to SPARC T4/T5-based (sun4v) servers can experience performance problems due to many factors. One of the reasons is often thought to be caused by the SPARC T-series processor technology itself.
Solution
CT (Critical Thread) support in Oracle Database begins at version 11.2.0.4
Oracle has introduced many significant enhancements to increase single-threaded performance, and in order to take advantage of the latest technology on current sun4v products, it is recommended to upgrade to the latest compiler, OS, and application versions. For example, feature enhancements in Oracle Database Rel. 11.2.0.4 on T4, T5, M5 and M6 servers automatically activate Critical Thread (CT) scheduler class for optimal database performance, enhancing the log writer, LMS, and VTKM background processes' execution.
Applications running versions of Oracle Database prior to 11.2.0.4, and having not been optimized for sun4v architectures, should be modified or enhanced to take advantage of the CT optimization technology introduced in the S3 chip and compiled into Oracle Database Rel. 11.2.0.4 and beyond.
Although Oracle maintains binary compatibility across SPARC and product lines, nevertheless, it is recommended that applications being ported from sun4u to sun4v be recompiled to take advantage of the architectural differences and enhancements.
Architectural enhancements in the SPARC S3 core (in SPARC T4, T5, M5 and M6 processors) provide increased single-threaded performance, versus previous S1/S2-based cores. Reference and join the discussions on Critical Threads Optimization and Oracle Tips : Solaris Lgroups, CT optimization, Data Pump, Recompilation of Objects blogs discussing this subject and more. Solaris OS support for Critical Thread Optimization was added at SPARC Solaris 10 - 8/11 (Solaris 10 Update 10), Solaris 11 (and newer).
All S3-based servers, including T4/T5 and M5/M6, have 64 byte line size of L3 cache and 32 byte line size for L1 and L2 cache. The central processing unit core design for all four products is the same. What's different is the number of cores on a given chip, the size of cache, the memory and coherency interfaces, and clock speed.
Highlights include 8-way threaded, dual-issue, out-of-order (OoO) instruction execution, in order commit; Sophisticated branch prediction; Prefetching of both instructions and data; Dynamically threaded with hardware-optimized resource sharing Support for Critical Threads; Deep pipeline for high frequency operation; Integrated user-level cryptographic acceleration; Balanced single-thread and multi-thread performance.
Some related further references. Note that listing all Oracle/SPARC/Solaris performance related references is beyond the scope of this document :
Critical Threads Optimization (T4,T5,M5,M6 sun4v processors) https://blogs.oracle.com/observatory/entry/critical_threads_optimization
Doc ID 1680269.1 Things to Consider to avoid RDBMS Performance problems on Sparc platforms for 11.2.0.3 and 11.2.0.4
Oracle Tips https://blogs.oracle.com/mandalika/entry/oracle_tips_solaris_lgroups_ct
Bug:12951619 - database to use critical threads feature in Solaris
Document:1523164.1 - SPARC: Reducing High Waits on 'log file sync' on Oracle Solaris SPARC by Increasing Priority of Log Writer
T4: A Highly Threaded Server-on-a-Chip with Native Support for Heterogeneous Computing
http://www.hotchips.org/wp-content/uploads/hc_archives/hc23/HC23.19.7-Server/HC23.19.731-T4-Golla-Oracle-hotchips_corrected.pdf
SPARC Server Architecture References (T4, T5, M5-32, M6-32)
See discussions of 'Dynamic Threading' and 'Critical Thread Optimization' in SPARC Server Architecture White Papers:
Oracle's SPARC T4-1, SPARC T4-2, SPARC T4-4, and SPARC T4-1B Server Architecture
https://www.oracle.com/technetwork/server-storage/sun-sparc-enterprise/documentation/o11-090-sparc-t4-arch-496245.pdf
Oracle's SPARC T5-2, SPARC T5-4, SPARC T5-8, and SPARC T5-1B Server Architecture
https://www.oracle.com/technetwork/server-storage/sun-sparc-enterprise/documentation/o13-024-sparc-t5-architecture-1920540.pdf
SPARC M5-32 Server Architecture
https://www.oracle.com/technetwork/server-storage/sun-sparc-enterprise/documentation/o13-024-m5-32-architecture-1920556.pdf
SPARC M6-32 Server Architecture
https://www.oracle.com/technetwork/server-storage/sun-sparc-enterprise/documentation/o13-066-sparc-m6-32-architecture-2016053.pdf
References
<NOTE:1523164.1> - SPARC: Reducing High Waits on 'log file sync' on Oracle Solaris SPARC by Increasing Priority of Log Writer
<NOTE:781763.1> - Migration from fast single threaded CPU machine to CMT UltraSPARC T1 and T2 results in increased CPU reporting and diminished performance
<BUG:12951619> - DATABASE TO USE CRITICAL THREADS FEATURE IN SOLARIS
<NOTE:1909974.1> - Diagnosing Oracle Database Performance Issues from a Solaris Operating System Perspective
Attachments
This solution has no attachment