Oracle Solaris Studio Technical Articles/Whitepapers

Product Docs

Media

Topics

White Papers
General | IDE | C/C++ | Fortran | Debugging
Performance Analysis and Optimization
X86/x64 | Parallel/Multithreaded Programming

These technical articles and whitepapers supplement the Oracle Solaris Studio product documentation with in-depth discussions and best programming practices using Solaris Studio compilers and tools.


New White Papers 

Taking Advantage of OpenMP 3.0 Tasking with Oracle Solaris Studio (October 2014)
This technical white paper shows how to use Oracle Solaris Studio 12.2 to implement, profile, and debug an example quick sort (qsort) OpenMP program. (PDF)

Oracle Solaris Studio Performance Tools 
This article describes the kinds of performance questions users typically ask, and then it describes the Oracle Solaris Studio performance tools and shows examples of what the tools can do. (PDF)

Taking Advantage of OpenMP 3.0 Tasking with Oracle Solaris Studio
A white paper that shows how to use Oracle Solaris Studio 12.2 to implement, profile and debug a sample OpenMP program. (PDF)

Examining MPI Applications with the Oracle Solaris Studio Performance Analyzer – A How to Guide (PDF)

Developing Enterprise Applications with Oracle Solaris Studio Whitepaper (PDF)

Developing Parallel Programs — A Discussion of Popular Models Whitepaper (PDF)



General


Libraries, Linking, Initialization, and C++ (May 2011)
This series of articles describe how to link libraries so that applications are able to locate them at run time.

IDE Quick Start Tutorial

DLight Tutorial 

Why Use Sun Studio 12 Compilers and Tools? (August 2008) 

Beyond LAMP: SAMP... LGPJ... LAMJ... (July 2008) 

Using and Redistributing Solaris Studio Libraries in an Application (updated March 2011) 

Introduction to the Oracle Solaris 11 Developer Environment (November 2011) 

Building GLib With Sun Studio Tools - A Case Study (May 2006) 

Core Dump Management on the Oracle Solaris OS (June 2007)

Converting 32-bit Applications Into 64-bit Applications: Things to Consider (January 2005) 

Floating-Point Computing: A Comedy of Errors? (January 2004)


IDE

Data Selectivity and the Oracle Solaris Studio Performance Analyzer (October 2014)

The Oracle Solaris Studio Performance Tools (October 2014)

Profiling Java Applications with the Oracle Solaris Studio Performance Tools (October 2014)

Profiling OpenMP Applications with the Oracle Solaris Studio Performance Tools (October 2014)

Kernel Profiling with the Oracle Solaris Studio Performance Tools (October 2014)

Profiling MPI Applications with the Oracle Solaris Studio Performance Tools (October 2014)

Profiling on Machines with a Variable Clock Rate Using Oracle Solaris Studio

How to Extend the Oracle Solaris Studio IDE 

How to Create an Oracle Database Project in the IDE 

How to Add Support for Tool Collections to the IDE 

How to Add Unit Tests to Existing C/C++ Projects in the Oracle Solaris Studio IDE 

Developing Qt Applications in Oracle Solaris Studio IDE 

How to Use Database Explorer in the IDE 

How to Use Oracle Instant Client in the IDE 

How to Use C++ Templates in the Oracle Solaris Studio 12.3 IDE 

Importing Enterprise Application Projects into Oracle Solaris Studio IDE

How to Use IDE Projects Under Version Control 

How to Use Remote Development in the IDE

Performance Tips for the Oracle Solaris Studio IDE

How to Develop Code from a Remote Desktop with Oracle Solaris Studio


C/C++

New Language Extensions in the Sun Studio 12 C Compiler (June 2007)

Comparing C++ Standard Libraries libCstd and libstlport (May 2006)

Reducing Symbol Scope with Sun Studio C/C++ (May 2005; revised March 2006)

How to Use the restrict Qualifier in C (July 2003; revised March 2006)

Lock_Lint - Static Data Race and Deadlock Detection Tool for C

Mixing C and C++ Code in the Same Program (revised February 2011) 

Stability of the C++ ABI: Evolution of a Programming Language (revised March 2011) 

C++ FAQ (revised April 2011)
Frequently asked questions regarding the current and previous versions of the Studio C++ compiler.


Fortran

Automatic DTrace Probe Insertion in Fortran (February 2009)

Using F95 Interfaces to Customize Access to the Sun Performance Library (June 2007) 

Using Run-Time Checking Options With The Sun Studio Fortran Compiler (December 2006) 

Fortran 2003 Features in the Sun Fortran Compiler


Debugging

Solaris Studio dbxtool Tutorial

Optimized Code Debugging With Sun Studio dbx (November 2008)

Debugging Multithreaded Programs (Revised April 2011) 

Using DTrace to Demystify Watchpoints in the Solaris Studio dbx Debugger (Revised April 2011) 

AMD64 Instruction-Level Debugging with Solaris Studio dbx (Revised April 2011) 

Using DTrace with Solaris Studio Tools to Understand, Analyze, Debug, and Enhance Complex Applications (Revised April 2011) 

Debugging a JVM Level Hang Using dbx (March 2008)

Locating Memory Access Errors With Sun Memory Error Discovery Tool (September 2007)

Why Can't dbx Find My Function? (April 2006)

dbx and System Libraries: Why Can't dbx Read My Process or Core File?   (Revised March 2006)


Performance Analysis and Optimization

Optimizing Applications with Oracle Solaris Studio Compilers and Tools (June 2010)  

Oracle Solaris Studio: Using the Tuned Libraries for Peak Application Performance (June 2010)  

Solaris Studio 12.3 Performance Analyzer MPI Tutorial  

Sun Studio Performance Analyzer Quick Start Guide

HPC Profiling with the Sun Studio Performance Tools (October 2009)

Profiling MPI Applications (January 2011)
Profiling of Message Passing Interface (MPI) applications with the Oracle Solaris Studio Performance Tools.

Accelerate Application Builds With Dmake (July 2008)

Selecting the Best Compiler Options (Updated September 2009)

Using Sun Studio 12 on UltraSPARC T1- and T2-based Systems (Updated October 2007)

Calculating Processor Utilisation From the UltraSPARC T1 and UltraSPARC T2 Performance Counters (September 2007)

Prefetching Pragmas and Intrinsics (June 2007)

Performance Tuning With Sun Studio Compilers and Inline Assembly Code (June 2007)

Building Enterprise Applications with Sun Studio Profile Feedback (April 2006; updated June 2007)

Profiling WebSphere Application Servers with Sun Studio Performance Tools (January 2007)

Advanced Compiler Options for Performance (Revised November 2010)

Cool Tools: Using SHADE to Trace Program Execution (September 2006)

Profiling WebLogic Servers with Sun Studio Performance Tools (August 2006)

Sun Studio: Using VIS Instructions To Speed Up Key Routines (January 2006)

The Sun Studio Performance Tools (November 2005)

Use Profile Feedback To Improve Performance (September 2005)

Improving Code Layout Can Improve Application Performance (June 2005)

Using Inline Templates to Improve Application Performance (revised February 2011) 

Using UltraSPARC-IIICu Performance Counters to Improve Application Performance

Tip: How Many Threads Does It Take?


x86/x64

Getting the Best AMD64 Performance With Sun Studio Compilers (Updated August 2008)

Sun Studio Support for the AMD64 Medium Memory Model (December 2005; revised June 2006)

Sun Studio 10 Compilers and the AMD64 ABI (Revised November 2005)

64-bit x86 Migration, Debugging, and Tuning, With the Sun Studio 10 Toolset (January 2005)

Comparing Oracle Solaris Studio SPARC and x86 Compiler Options (January 2011)  

Assembly Language Techniques for the Oracle Solaris on x86 Platforms (June 2004)


Parallel/Multithreaded Programming

Making Sense of Parallel Programming Terms  (Revised April 2011) 

Parallel Programming with Oracle Developer Tools Whitepaper (May 2010)  

Using Intel's Threaded Building Blocks (TBB) With Sun Studio Express (May 2008)

An OpenMP Runtime API for Profiling (February 2007)

Introducing OpenMP: A Portable, Parallel Programming API for Shared Memory Multiprocessors (January 2007)

The Challenge of Race Conditions in Parallel Programming (July 2006)

Maximizing Application Performance on Chip Multithreading (CMT) Architectures (June 2006)

Chip Multithreading and Multiprocessing (December 2005)

Developing Parallel Programs — A Discussion of Popular Models (September 2010) 

OpenMP Support in Sun Studio Compilers and Tools (December 2005)

Improving Application Efficiency Through Chip Multi-Threading (March 2005; updated October 2005)