Oracle Developer Studio , anteriormente conocido como Oracle Solaris Studio , Sun Studio , Sun WorkShop , Forte Developer y SunPro Compilers , es el producto estrella de Oracle Corporation para el desarrollo de software en los sistemas operativos Solaris y Linux . Incluye compiladores optimizadores de C , C++ y Fortran , bibliotecas y herramientas de análisis de rendimiento y depuración para Solaris en plataformas SPARC y x86 , y Linux en plataformas x86/x64 , incluidos los sistemas multinúcleo.
Oracle Developer Studio se puede descargar y usar sin costo alguno; sin embargo, existen muchas actualizaciones de seguridad y parches de funcionalidad que solo están disponibles con un contrato de soporte de Oracle. [ 3 ]
La versión 12.4 añadió soporte parcial para el estándar de lenguaje C++11 . [ 4 ] Se admiten todas las características de C++11, excepto la concurrencia y las operaciones atómicas, y los literales definidos por el usuario. La versión 12.6 admite el estándar de lenguaje C++14 . [ 5 ]
Idiomas
Arquitecturas compatibles
Componentes
El paquete de software Oracle Developer incluye:
Optimizaciones del compilador
Para la generación de código se utiliza un sistema de optimización común .
Se utiliza una representación intermedia de alto nivel llamada Sun IR , y las optimizaciones de alto nivel realizadas en el componente iropt (optimizador de representación intermedia) se ejecutan a nivel de Sun IR. Las principales optimizaciones incluyen:
- Propagación de copias
- Plegado constante y propagación constante
- Eliminación de código muerto
- Análisis de optimización interprocedimental
- Optimizaciones de bucles
- Paralelización automática
- Optimización guiada por perfiles
- Reemplazo escalar
- Reducción de fuerza
- Vectorización automática , con
-xvector=simd
OpenMP
La API de paralelización de memoria compartida de OpenMP es nativa de los tres compiladores.
Cobertura de código
Tcov , una herramienta de análisis de cobertura de código fuente y de perfilado instrucción por instrucción, viene incluida de serie. Tcov genera recuentos exactos del número de veces que se ejecuta cada instrucción en un programa y añade anotaciones al código fuente para incluir información sobre su funcionamiento.
La utilidad tcov proporciona información sobre la frecuencia con la que un programa ejecuta segmentos de código. Genera una copia del archivo fuente, anotada con las frecuencias de ejecución. El código puede anotarse a nivel de bloque básico o de línea. Dado que las instrucciones de un bloque básico se ejecutan el mismo número de veces, el recuento de ejecuciones del bloque básico equivale al número de veces que se ejecuta cada instrucción del bloque. La utilidad tcov no genera datos basados en el tiempo.
GCCFSS
El compilador GCC para sistemas SPARC (GCCFSS) utiliza el front-end de GNU Compiler Collection (GCC) junto con el back-end de generación de código del compilador Oracle Developer Studio. De esta forma, GCCFSS puede gestionar directivas específicas del compilador GCC y, al mismo tiempo, aprovechar las optimizaciones del back-end del compilador. Esto facilita enormemente la migración de aplicaciones basadas en GCC a sistemas SPARC.
GCCFSS 4.2 añade la capacidad de ser utilizado como compilador cruzado ; los binarios SPARC se pueden generar en una máquina x86 (o x64) que ejecute Solaris. [ 8 ]
Plataforma de investigación
Antes de su cancelación, el Rock habría sido el primer procesador de propósito general en admitir memoria transaccional por hardware (HTM). El compilador Oracle Developer Studio es utilizado por varios proyectos de investigación, incluidos Hybrid Transactional Memory (HyTM) [ 9 ] y Phased Transactional Memory (PhTM) [ 10 ] , para investigar la compatibilidad y las posibles optimizaciones de HTM.
Historia
– Fuente: [ 11 ]
Referencias
- ↑ Ikroop Dhillon (5 de julio de 2017). "¡Anunciamos Oracle Developer Studio 12.6!" . Blogs de Oracle . Oracle Corporation . Consultado el 13 de septiembre de 2017 .
- ↑ Oracle retira los compiladores de Studio para Solaris y Linux
- ↑ "Oracle Developer Studio - Descargas" . Oracle Corporation . Consultado el 16 de marzo de 2018 .
- ↑ "Compatibilidad con el estándar C++11", Novedades de Oracle® Solaris Studio 12.4 , Oracle Corporation , consultado el 16 de marzo de 2018.
- ↑ "1.5 Conformidad con los estándares", Oracle® Developer Studio 12.6: Guía del usuario de C++ , Oracle , consultado el 16 de marzo de 2018
- ↑ "Oracle Solaris Studio 12.2: Analizador de rendimiento" . Oracle Corporation . Consultado el 11 de septiembre de 2010 .
- ↑ "Sun Studio 12: Distributed Make (dmake)" . Oracle Corporation . Consultado el 1 de junio de 2016 .
- ↑ "Herramientas interesantes: GCC para Sun Systems 4.2.0 como compilador cruzado" . Sun Microsystems . Consultado el 31 de julio de 2008 .
- ↑ "Memoria transaccional híbrida" (PDF) . Sun Microsystems . Consultado el 10 de noviembre de 2007 .
- ↑ "PhTM: Phased Transactional Memory" (PDF) . Sun Microsystems. Archivado del original (PDF) el 11 de febrero de 2012. Consultado el 1 de junio de 2016 .
- ↑ "Matriz de componentes de Oracle Developer Studio y Oracle Solaris Studio" . Oracle Technology Network . Oracle Corporation . Consultado el 16 de marzo de 2018 .
Enlaces externos
- Página principal de Oracle Developer Studio en Oracle Developer Network.
- Documentación del producto
- Herramientas geniales: GCC para sistemas SPARC
- Foros de Oracle Studio
- Optimización del rendimiento de las aplicaciones en la plataforma Sun (archivado el 29 de enero de 2008)
- Descarga Oracle Developer Studio
- Matriz de componentes de Oracle Developer Studio
- Software de Sun Microsystems
- compiladores de C++
- Compiladores de C (lenguaje de programación)
- Compiladores de Fortran
- Bibliotecas informáticas
- Software de 1991