4.2 Oracle Solaris Studio for Oracle Linux

Oracle Solaris Studio is a comprehensive C, C++, and Fortran tool suite that accelerates the development of scalable, secure, and reliable enterprise applications. In particular, Oracle Solaris Studio tools are designed to leverage the capabilities of multicore CPUs. The tools enable easier creation of parallel and concurrent software applications for such platforms. The compilers, tools, and libraries shipped with Oracle Solaris Studio are engineered to make applications run optimally on Oracle platforms.

Oracle Solaris Studio includes a number of tools that can help you to isolate difficult-to-detect code issues:

  • Performance Analyzer allows you to analyze application performance, to determine which parts of a program are candidates for improvement, and to help identify performance hotspots.

  • Thread Analyzer allows you to detect code issues in multithreaded programs such as data races and deadlock conditions.

  • Discover allows you to detect programming errors related to the allocation and use of program memory at runtime, such as:

    • Reading from and writing to unallocated memory.

    • Freeing incorrect memory blocks.

    • Attempting to use freed memory.

    • Accessing memory beyond allocated array bounds.

    • Memory leaks.

    • Accessing uninitialized memory.

  • Uncover allows you to measure the code coverage of user applications by displaying information about the areas of an application that are exercised during testing.

The C compiler (cc) in Oracle Solaris Studio is fully compliant with the ISO/IEC 9899:1999 standard, while the C++ compiler (CC) supports the ISO International Standard for C++ (ISO IS 14882:2003). The Fortran compiler (f95) conforms to part one of the ISO/IEC 1539-1:1997 Fortran standards document and also provides a Fortran 77 compatibility mode that accepts most legacy Fortran 77 source code. The Oracle Solaris Studio compilers support OpenMP, IEEE floating point, and C99, and adhere to IEEE 754. If the application to be ported does not have strict requirements for standards adherence, you can improve performance further by using optimization flags that create higher-performance binaries. For example, the C compiler option -fns permits nonstandard floating-point truncation and the -fast macro (which implies -fns) generates an optimized binary for specific targeted hardware.

For more information about Oracle Solaris Studio, see the Oracle Solaris Studio Documentation.