The Oracle Solaris Studio, formerly named Sun Studio, Sun WorkShop, Forte Developer, and SunPro Compilers, is a compiler suite which is Oracle Corporation's flagship software development product for the operating systems Solaris and Linux. The Oracle Solaris Studio software delivers optimizing compilers for C, C++, and Fortran, libraries, and performance analysis, and debugging tools for Solaris on SPARC, and both Solaris and Linux on x86/x64 platforms, including multi-core systems.
The Solaris Studio software suite is downloadable at no charge from a website.[3]
Languages
Supported architectures
Components
The Solaris Studio is a suite of software products that includes:
- C, C++, and Fortran compilers and support libraries
- dbx and frontends
- lint
- IDE based on NetBeans
- Performance analyzer[4]
- Thread analyzer
- Sun performance library
- Distributed make[5]
Compiler optimizations
A common optimizing backend is used for code generation.
A high-level intermediate representation called Sun IR is used, and high-level optimizations done in the iropt (intermediate representation optimizer) component are operated at the Sun IR level. Major optimizations include:
- Copy propagation
- Constant folding and constant propagation
- Dead code elimination
- Interprocedural optimization analysis
- Loop optimizations
- Automatic parallelization
- Profile-guided optimization
- Scalar replacement
- Strength reduction
- Vectorization, with
-xvector=simd
OpenMP
The OpenMP shared memory parallelization API is native to all three Solaris Studio compilers.
Code coverage
Main article: Tcov
Tcov, a source code coverage analysis and statement-by-statement profiling tool, comes as a standard utility with Sun Studio suite. Tcov generates exact counts of the number of times each statement in a program is executed and annotates source code to add instrumentation.
The tcov utility gives information on how often a program executes segments of code. It produces a copy of the source file, annotated with execution frequencies. The code can be annotated at the basic block level or the source line level. As the statements in a basic block are executed the same number of times, a count of basic block executions equals the number of times each statement in the block is executed.[6] The tcov utility does not produce any time-based data.
GCCFSS
The GCC for SPARC Systems (GCCFSS) compiler uses GNU Compiler Collection's (GCC) front end with the Sun Studio compiler's code-generating back end. Thus, GCCFSS is able to handle GCC-specific compiler directives, while it is also able to take advantage of the compiler optimizations in the Sun Studio compiler's back end. This greatly facilitates the porting of GCC-based applications to SPARC systems.
GCCFSS 4.2 adds a new functionality as a cross compiler; SPARC binaries can be generated on an x86 (or x64) machine running Solaris.[7]
Research platform
Before its cancellation, the Rock would have been the first general-purpose processor to support hardware transactional memory (HTM). The Sun Studio compiler is used by a number of research projects, including Hybrid Transactional Memory (HyTM)[8] and Phased Transactional Memory (PhTM),[9] to investigate support and possible HTM optimizations.
References
External links
Documentation
|
---|
| Hardware | |
---|
| Software | |
---|
| Storage | - StorageTek
- Sun Open Storage
- QFS
- ZFS
|
---|
| High-performance computing | - Sun Cloud
- Sun Constellation System
- Sun Visualization System
- Sun Grid Engine
- Lustre
|
---|
| Research | |
---|
| Education and recognition | - SCPs
- Daftar/Tabel -- notable employees
- BlueJ
|
---|
| Community | |
---|
|