![Page 1: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/1.jpg)
1
![Page 2: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/2.jpg)
Copyright © 2010, Oracle and/or its affiliates. All rights reserved.
Streamline the Application Development Process
– Oracle Solaris StudioWenlong ZhangSenior Sales Consultant
![Page 3: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/3.jpg)
3
Agenda
• Introduction• Solaris Studio IDE and Performance Tools
– Build & Debug– Performance analyzer– Thread analyzer – Other tools in Solaris Studio
![Page 4: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/4.jpg)
4
Oracle Solaris Studio
20+ year history of delivering the best integrated development platform for building scalable, secure and reliable enterprise and ISV applications
![Page 5: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/5.jpg)
5
Release History and OS SupportProduct name Release Date Solaris OS Support Linux Support
SPARC X86/X64
Forte Developer 6 May ‘00 2.6, 7, 8 2.6, 7, 8
Forte Developer 6 Update 1 Nov ‘00 2.6, 7, 8 2.6, 7, 8
Forte Developer 6 Update 2 Jun ‘01 2.6, 7, 8, 9 2.6, 7, 8
Sun ONE Studio 7 May ‘02 7, 8, 9 -
Sun Studio 8 Mar ‘04 7, 8, 9, 10 7, 8, 9, 10
Sun Studio 9 Jul ‘04 8, 9, 10 8, 9, 10 RHEL3, SLES 8
Sun Studio 10 Jan ‘05 8, 9, 10 8, 9, 10 RHEL3, SLES 8
Sun Studio 11 Nov ‘05 8, 9, 10 8, 9, 10 RHEL4, SLES 9
Sun Studio 12 Jun ‘07 9, 10 9, 10 RHEL4, SLES 9
Sun Studio 12 Update 1 Jun ‘09 Solaris 10OpenSolaris
Solaris 10OpenSolaris
OEL 5, RHEL 5,SLES 10
Oracle Solaris Studio 12.2 Sept ‘10 Solaris 10OpenSolarisSolaris 11 Express
Solaris 10OpenSolarisSolaris 11 Express
OEL 5, RHEL 5,SLES 10
Oracle Solaris Studio 12.3 Dec ‘12 Solaris 10,Solaris 11 ExpressSolaris 11
Solaris 10, Solaris 11 ExpressSolaris 11
OEL 5, RHEL 5
![Page 6: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/6.jpg)
6
Solaris Studio Overview
• #1 development platform for building scalable, secure and reliable mission-critical SPARC and x86 applications for the #1 enterprise OS, Oracle Solaris– Best world record performance with up to 300% faster code
on Mseries, T-series, and x86-based Oracle Sun Enterprise Servers
– Only vendor to offer tooling that takes advantage of powerful OS features, such as Solaris Dtrace
– Best suite of fully integrated and optimized tools, enabling developers to generate enterprise and ISV applications faster
– 20 year track record of delivering unmatched binary compatibility in the industry
![Page 7: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/7.jpg)
7
Highest Application Performance15+ year history of delivering best app performance
• World record performance benchmarks on all latest Oracle Sun systems– Oracle Sun SPARC, Fujitsu SPARC64,
Intel and AMD x86-based systems• Consistently better performance than
open source alternatives– SPARC
— 50% better integer performance vs. GCC— 4.8x better fp performance vs. GCC
– x86— 46% better integer performance vs. GCC— 2x better fp performance vs. GCC
* Performance measurements are based on estimated SPEC runs of SPEC CPU2006 for Studio 12.2 and GCC 4.5.1
![Page 8: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/8.jpg)
8
Solaris Binary Compatibility Guarantee
• About 20 years track record of delivering unmatched binary compatibility in the industry
• Leader in C++ ABI compatibility • Solaris + Studio is the only vendor to
guarantee this level of compatibility for C++ objects
![Page 9: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/9.jpg)
9
About Oracle Solaris Studio
• #1 developer tool-suite to create high-performance, scalable and robust mission-critical enterprise and ISV applications for Oracle Sun servers– Maximize ROI of Oracle Hardware: Highest app
performance on SPARC M-series, T-series, and x86-based Oracle Sun Enterprise Servers
– Improve Time-to-Market: Single suite of advanced tools geared towards leveraging system features to increase productivity and simplify multi-core development
– Protect your application investment: Guaranteed application compatibility with Oracle Solaris and Oracle Solaris Studio
![Page 10: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/10.jpg)
10
About Oracle Solaris Studio
• Formerly named “Sun Studio”, is a free comprehensive C, C++, and Fortran tool suite for both Oracle Solaris and Linux operating systems that accelerates the development of scalable, secure, and reliable enterprise applications.
• Contains– C/C++/Fortran and OpenMP compilers– Debugger (dbx)– IDE– Performance libraries– Performance Analyzer– Thread Analyzer– Discover (find memory access errors and leaks)– Uncover (code coverage tool)– Some other tools (spot, Dlight, c++filt, ...)
![Page 11: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/11.jpg)
11
About Oracle Solaris Studio
![Page 12: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/12.jpg)
12
Oracle Solaris Studio 12.3 Feature Highlights
![Page 13: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/13.jpg)
13
Agenda
• Introduction• Solaris Studio IDE and Performance Tools
– Build & Debug– Performance analyzer– Thread analyzer – Other tools in Solaris Studio
![Page 14: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/14.jpg)
14
Full-featured Graphical IDEFull edit, compile and debug support, and a lot more...
![Page 15: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/15.jpg)
15
Agenda
• Introduction• Solaris Studio IDE and Performance Tools
– Build & Debug– Performance analyzer– Thread analyzer – Other tools in Solaris Studio
![Page 16: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/16.jpg)
16
Performance Analyzer
• collect command– gathers performance data during application execution
collect <application> <parameters>– generate profiling data as test.N.er directory
• Analyze the profiling data– analyzer <test.N.er> (GUI mode)– er_print <test.N.er> (text mode)
![Page 17: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/17.jpg)
17
Performance Analyzer (Function Tab)
![Page 18: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/18.jpg)
18
Performance Analyzer (Source Tab)
![Page 19: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/19.jpg)
19
Performance Analyzer (Disassembly Tab)
![Page 20: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/20.jpg)
20
Performance Analyzer (Timeline Tab)
![Page 21: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/21.jpg)
21
Agenda
• Introduction• Solaris Studio IDE and Performance Tools
– Build & Debug– Performance analyzer– Thread analyzer – Other tools in Solaris Studio
![Page 22: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/22.jpg)
22
Thread Analyzer
• About Oracle Studio Thread Analyzer– Multi-threaded programs are hard to debug because the
errors are not easily reproduced.– Thread Analyzer can analyze the execution of a multi-
threaded program and checks for a variety of multi-threaded programming errors such as data races and deadlocks.
– Works on programs written using POSIX thread API, Solaris thread API, OpenMP and a mix of them.
![Page 23: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/23.jpg)
23
Thread Analyzer usage modelfor detecting data race and deadlocks
• Usage Mode for race– Instrument the code to enable data race detection
— Source level instrument: compile flags: -g -xinstrument= datarace— Binary level instrument
— Use discovery tool to generate an instrumented version for the binary.— Shared libraries are automatically instrumented when they are opened
– Create experiments by collect command with “-r race” option – Analyze the experiments
— Use tha/analyze command (graphic mode)— Use er_print -races command (text mode)
• Usage Model for deadlocks– Similar as with detecting data races, but without the need to
instrument the codes.– Create experiments by collect command with “-r deadlock” option.
![Page 24: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/24.jpg)
24
Thread Analyzer – Race View
![Page 25: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/25.jpg)
25
Thread Analyzer for detecting deadlocks
![Page 26: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/26.jpg)
26
Thread Analyzer – Dual Source View
![Page 27: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/27.jpg)
27
Agenda
• Introduction• Solaris Studio IDE and Performance Tools
– Build & Debug– Performance analyzer– Thread analyzer – Other tools in Solaris Studio
![Page 28: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/28.jpg)
28
Discover Memory debugger, identify dynamic memory errors
• Complile with “-g”• Instrument the
binary with Discover• Run the
instrumented binary to collect the dynamic memory access data
• Open the code analyzer GUI to view results
![Page 29: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/29.jpg)
29
UncoverFind major functional areas of code that are not being tested
• Complile with “-g”• Instrument the
binary with Uncover• Run instrumented
binary to collect code coverage data
• Run Uncover again on the .uc directory
• Open the code analyzer GUI to view results
![Page 30: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/30.jpg)
30
DLight
• DLight is an interactive graphical observability tool based on DTrace
• DLight includes five profiling tools for C, C++, and Fortran programs:– Thread microstate– CPU usage– Memory usage– Thread usage– I/O usage
![Page 31: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/31.jpg)
31
Code AnalyzerNew in Studio 12.3
• Static code checking as part of compilation– Compile with option
“-xanalyze=code”• Dynamic memory
access checking• Code coverage
analysis
![Page 32: Streamline the Application Development Process … X86/X64 Forte Developer 6 May ... 10 RHEL3, SLES 8 Sun Studio 10 Jan ‘05 8, 9, 10 8 ... – Create experiments by collect command](https://reader031.vdocument.in/reader031/viewer/2022030510/5ab983547f8b9ac60e8e2865/html5/thumbnails/32.jpg)
Copyright © 2010, Oracle and/or its affiliates. All rights reserved.
Streamline the Application Development Process
– Oracle Solaris StudioWenlong Zhang