IBM XL C/C++ for AIX 11.1 proporciona compatibilidad con la arquitectura de los procesadores POWER7

Documentos relacionados
IBM XL Fortran para AIX, V13.1, ofrece compatibilidad con la arquitectura de procesadores POWER7

Intel lanza su procesador Caballero Medieval habilitado para Inteligencia Artificial

5.3 CREAR FORMULARIOS

Las optimizaciones pueden realizarse de diferentes formas. Las optimizaciones se realizan en base al alcance ofrecido por el compilador.

Tema 2 Introducción a la Programación en C.

Computadora y Sistema Operativo

Instituto Schneider Electric de Formación

Lenguaje de Programación

Guía práctica Windows 7 Registro y configuración Francisco Charte Ojeda

Programación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C

MICROSOFT EXCEL 2010

MS_10962 Advanced Automated Administration with Windows PowerShell

ARQUITECTURA BÁSICA DEL ORDENADOR: Hardware y Software. IES Miguel de Cervantes de Sevilla

1

Tema V Generación de Código

Toshiba EasyGuard en acción:

Programación de Sistemas Depuradores (Debugger) MIS. Lizbeth Hdz. Glz.

Administración Informática. Unidad I. Tipos de sistemas y su clasificación A) Sistemas de información.

1. Computadores y programación

MASTER PROFESIONAL C# 5 Y ASP.NET MVC 5

Oracle Database 11g: Taller de Administración II Versión 2 (Español)

Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo

Java Avanzado. Guía 1. Java Avanzado Facultad de Ingeniería. Escuela de computación.

JAVA 7 Los fundamentos del lenguaje Java

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

La última versión disponible cuando se redactó este manual era la 5 Beta (versión ), y sobre ella versa este manual.

Grado en que el producto software satisface las necesidades expresadas o implícitas, cuando se usa bajo condiciones determinadas. ISO

Qué es un programa informático?

Universidad Autónoma del Estado de México ADMINISTRACIÓN Y SEGURIDAD EN SISTEMAS OPERATIVOS SEGURIDAD SOBRE WINDOWS POR: J. JAIR VÁZQUEZ PALMA

Introducción a la Computación. Herramientas Informáticas. Omar Ernesto Cabrera Rosero Universidad de Nariño

TEMA 2 Introducción a C# ANÁLISIS Y DESARROLLO DE APLICACIONES INFORMÁTICAS Curso 2010/2011

online Itinerario Adobe CS6 para Diseñadores

IMPRESIÓN Y CONECTIVIDAD

TEMA II: ALMACENAMIENTO DE LA INFORMACIÓN

Curso Microsoft SharePoint Server 2010 Designing and Developing Applications (10232)

Manual de usuario MetaTrader 4 TraderNovo:

DESCRIPCIÓN PROJECT PRO FOR OFFICE 365

Fundamentos de programación JAVA

INDICE Prologo Capitulo 1. Algoritmos y programas Capitulo 2. La resolución de los problemas con computadoras y las herramientas de programación

INGENIERÍA DEL SOFTWARE

Fundamentos de Programación Visual Basic

DESCRIPCIÓN ESPECÍFICA NÚCLEO: COMERCIO Y SERVICIOS SUBSECTOR: INFORMÁTICA

Tema: Introducción al IDE de Microsoft Visual C#.

Nero InfoTool Manual. Nero AG

Sistemas Operativos. Introducción. Tema 6

INTRODUCCIÓN...9 CAPÍTULO 1. ELEMENTOS DE UN PROGRAMA INFORMÁTICO...11

Aplicaciones de Microsoft Dynamics CRM 4.0

Deswik.Sched Planificación con Diagramas de Gantt

Objetos de aprendizaje: Computadora

Microsoft Project 2013

Versión 1.6 BOLETÍN (DICIEMBRE 2003) a2 Contabilidad Versión 1.6. a2 softway C. A.

Procesadores de lenguaje Tema 6 La tabla de símbolos

Introducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones

Parte I:Teoría. Tema 3:Introducción a los Sistemas operativos. Instalación

Universidad Central Del Este U C E Facultad de Ciencias y Humanidades Escuela de Pedagogía Mención Informática.

PRODUCTIVIDAD LA EFICIENCIA QUE DESEA ADMINISTRACIÓN DE EQUIPOS PRODUCTIVIDAD SEGURIDAD SOSTENIBILIDAD

SMB, Professional and Enterprise Edition Versión 2.0

UNIVERSIDAD MILITAR NUEVA GRANADA INVITACIÓN PÚBLICA No. ANEXO 16 REQUERIMIENTOS TÉCNICOS DE SERVICIO DE REINSTALACIÓN

Memoria Cache. Departamento de Arquitectura de Computadores

una red de equipos no puede funcionar sin un sistema operativo de red

Tema 2 Conceptos básicos de programación. Fundamentos de Informática

0-31 : caracteres de control : carac. Comunes : especiales (flechas, símbolos) y particulares (ñ)

MICROSOFT EXCEL 2016 Avanzado

Capítulo III: MARCO METODOLÓGICO

IBM Power BI para bienes de consumidor y el sector minorista en Microsoft Surface TM. Preparado por Práctica de solucione de IBM y Microsoft: Canadá

Tema 3 SUBRUTINAS. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía

Diseño arquitectónico 1ª edición (2002)

TÉCNICO SUPERIOR UNIVERSITARIO EN MECATRÓNICA ÁREA AUTOMATIZACIÓN EN COMPETENCIAS PROFESIONALES ASIGNATURA DE LENGUAJE DE PROGRAMACIÓN

1. COMPARTIR Y MANTENER LIBROS

Sistema Integrado de Gestión INSTRUCTIVO PARA LA REALIZACIÓN DE COPIAS DE SEGURIDAD

ISValue Portal c/pujades, Barcelona (Barcelona)

NUEVAS TECNOLOGÍAS APLICADAS A LA EDUCACIÓN. MICROSOFT OFFICE: WORD, POWERPOINT Y EXCEL.

Tema 2: Lenguaje máquina. La interfaz entre el hardware y el software

IFCT0309 Montaje y Reparación de Equipos Microinformáticos

Cristian Blanco

IBM BladeCenter S: grandes ventajas para pequeñas oficinas

Unidad I Introducción a la programación de Sistemas. M.C. Juan Carlos Olivares Rojas

Exchange Online. SharePoint Online. Skype for Business. One Drive

Objetivos y Temario CURSO MySQL 5

Aprender a desarrollar con JavaScript

Tema: CREACIÓN DE DIAGRAMAS ESQUEMATICOS CON MICROSOFT VISIO

CURSO DE EXCEL -INTERMEDIO

CONECTAMOS PERSONAS SISTEMAS DE TELEFONÍA MULTI ANTENA DECT SIP DE PANASONIC

INDICE Control de dispositivos específicos Diseño asistido por computadora Simulación Cálculos científicos

Herramientas para el estudio de prestaciones en clusters de computación científica, aplicación en el Laboratorio de Computación Paralela

UNIDAD 2: Bases de Datos en Visual Basic

INFORMÁTICA Y COMUNICACIONES

LÓGICA DE PROGRAMACIÓN

LICENCIAS DEL SUPERVISOR X PARA CÁMARAS Y DISPOSITIVOS IP

6. PROCESADORES SUPERESCALARES Y VLIW

Lenguaje binario. Código ASCII. Medidas de la información

Creación y Modificación de Blog

Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1

Soluciones de administración de clientes e impresión móvil

: Algorítmica y Estructura de Datos I

Microsoft Excel 2003 (Completo)

IFCT0209 Sistemas Microinformáticos

Microsoft Excel 2003 (Completo)

Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.

Configuración de la Computadora. Referencia:

Transcripción:

, con fecha 13 de abril de 2010 IBM XL C/C++ for AIX 11.1 proporciona compatibilidad con la arquitectura de los procesadores POWER7 Tabla de contenidos 1 Visión general 2 Descripción 2 Prerrequisitos principales 7 Posicionamiento del producto 2 Fecha de disponibilidad prevista A simple vista IBM XL C/C++ for AIX es un compilador de C y C++ de alto rendimiento basado en los estándares, con funcionalidad avanzada de optimización y depuración. IBM XL C/C++ for AIX 11.1 incorpora las siguientes características y mejoras: Compatibilidad con la nueva arquitectura de los procesadores POWER7 para mejorar el rendimiento y la capacidad de las aplicaciones mediante mejoras introducidas en la arquitectura, que ha sido posibles gracias al desarrollo de la tecnología IBM Power Amplia variedad de características de optimización que permiten generar código optimizado para aplicaciones de 32 y 64 bits con el fin de que pueda ejecutarse eficazmente con distintos procesadores y familias de procesadores Nuevos informes de diagnósticos que pueden ayudar a identificar oportunidades de mejora en el rendimiento de las aplicaciones Opciones y directivas de compilador nuevas y mejoradas para proporcionar mayor flexibilidad y optimización del rendimiento Visión general IBM XL C/C++ for AIX se ha diseñado para optimizar las aplicaciones que se ejecutan en plataformas IBM Power con el fin de contribuir a liberar todo el potencial de su inversión en TI, crear y mantener aplicaciones científicas y empresariales vitales para el negocio, maximizar el rendimiento de las aplicaciones y mejorar la productividad de los desarrolladores. La ganancia de rendimiento obtenida durante años de optimización de los compiladores puede verse en las continuas mejoras introducidas en las distintas versiones, incluido el total aprovechamiento del nuevo procesador IBM POWER7. IBM XL C/C++ for AIX 11.1 introduce mejoras de aprovechamiento de la nueva arquitectura de los procesadores POWER7: Compatibilidad con la unidad vectorial y el conjunto de instrucciones VSX (extensión escalar vectorial) en los procesadores POWER7 con el fin de contribuir a paralelizar aplicaciones Optimización específica del procesador POWER7 para las funciones vectoriales altamente optimizadas en las bibliotecas Mathematical Acceleration Subsystem (MASS) Nuevas funciones integradas para proporcionar compatibilidad con las instrucciones del procesador POWER7, lo que facilita el control directo de las instrucciones POWER en el nivel de aplicación Nuevas opciones de compilador ARCH y TUNE, disponibles para facilitar el aprovechamiento total de la arquitectura de los procesadores POWER7 1

Gracias a la compatibilidad con el último chip de los procesadores POWER7, IBM habrá anticipado una inversión de más de 20 años en los compiladores XL para las arquitecturas de las series Power y PowerPC. IBM se ha hecho con una larga reputación de lanzar al mercado productos de compilación innovadores y de gran calidad. A lo largo de diversas versiones, la familia de compiladores IBM XL ha invertido en nuevas funciones, mejoras y adhesión a estándares con el fin de proporcionar las herramientas necesarias para desarrollar y mantener aplicaciones más inteligentes que respondan a las necesidades empresariales fundamentales. Entre las mejoras adicionales de XL C/C+ + for AIX 11.1, se incluyen: Compatibilidad adicional con el borrador del estándar para el lenguaje de programación, C++0x, para ofrecer una funcionalidad más amplia y permitir la máxima portabilidad del código fuente Funcionalidad adicional para una mayor optimización del rendimiento de sus aplicaciones C y C++ Nuevas y mejoradas opciones, directivas y funciones integradas del compilador para proporcionar mayor flexibilidad Prerrequisitos principales Sistemas -- servidores IBM Power System compatibles con: IBM AIX 5.3 TL 5300-07, o versiones posteriores IBM AIX 6.1 IBM PASE for i 6.1 con PTF SI30636, o versiones posteriores Espacio necesario en disco duro -- 500 MB Fecha de disponibilidad prevista abril 23, 2010 Descripción IBM XL C/C++ for AIX continúa ofreciendo nueva funcionalidad y mejoras, como la compatibilidad con la nueva arquitectura de los procesadores POWER7, con el fin de contribuir a mejorar el rendimiento y la capacidad de las aplicaciones. Aprovechamiento de la nueva arquitectura de los procesadores POWER7 Una ventaja fundamental de IBM XL C/C++ for AIX es el rendimiento y su capacidad para optimizar el código generado para que se ejecute en plataformas Power. La ganancia de rendimiento obtenida durante años de optimización de los compiladores puede verse en las continuas mejoras introducidas en las distintas versiones, desde el desarrollo de los procesadores POWER4 hasta los procesadores POWER4+, POWER5, POWER5+ y POWER6. En XL C/C++ for AIX 11.1, la compatibilidad con el compilador permite ahora sacar el máximo provecho del nuevo procesador POWER7. IBM XL C/C++ for AIX 11.1 proporciona compatibilidad con el conjunto de instrucciones VSX de los procesadores POWER7. Se han introducido nuevos tipos de datos y funciones integradas para proporcionar compatibilidad con las instrucciones VSX, y permitir gestionar las operaciones vectoriales de un modo eficaz en las aplicaciones. El optimizador avanzado del compilador también puede aprovechar automáticamente las ventajas de estas funciones vectoriales para paralelizar su aplicación. 2

Las bibliotecas MASS altamente optimizadas se han mejorado para ofrecer compatibilidad con los procesadores POWER7: Las funciones vectoriales de la biblioteca de vectores MASS se han optimizado para la arquitectura POWER7. Las funciones se pueden usar en los modos de 32 ó 64 bits. Se han incorporado nuevas funciones, como exp2, exp2m1, log21p y log2, en los grupos funcionales de precisión simple y doble. Además, se han mejorado las funciones compatibles con procesadores POWER previas para proporcionar compatibilidad con POWER7. Se incluye una nueva biblioteca MASS SIMD optimizada para el procesador POWER7, que contiene un grupo acelerado de funciones matemáticas utilizadas frecuentemente. Las nuevas funciones integradas permiten utilizar las instrucciones del procesador POWER7 con el fin de darle control directo en el nivel de aplicación: Instrucciones de control de caché y extensiones de recuperación previa para POWER7 Instrucciones de hardware para POWER7 Nuevas opciones arch y tune de compilador, disponibles para especificar la generación de código para la arquitectura de los procesadores POWER7 -qarch=pwr7 ordena al compilador que cree código que aproveche toda la arquitectura de hardware de POWER7. -qtune=pwr7 permite introducir optimizaciones específicas para las plataformas de hardware de POWER7. Gracias a la compatibilidad con el último chip de los procesadores POWER7, IBM habrá anticipado una inversión de más de 20 años en compiladores para las arquitecturas de las series Power y PowerPC. Nuevos informes de diagnósticos para ayudarle a mejorar el rendimiento del código Informes de compilador en formato XML Con esta versión, se incluyen informes que contienen información indispensable para la optimización del compilador. Estos informes identifican las áreas del código donde el compilador puede aplicar la optimización. Asimismo, identifican áreas donde las optimizaciones no se pueden aplicar y explican los motivos. Esta información no se conocía o no estaba disponible para versiones anteriores del compilador. Se puede utilizar para cambiar el código con el fin de que el compilador se aproveche de nuevas optimizaciones para la mejora del rendimiento. Estos nuevos informes se generan en formato XML (XML 1.0) y son fácilmente utilizados por herramientas que usted puede crear para leer y analizar los resultados. Se incluye una hoja de estilos, xlstyle.xsl, para que pueda presentar el informe en un formato legible, que pueda ser leído por cualquier usuario que tenga un navegador compatible con XSLT. En esta versión, se suministran informes para cuatro categorías de optimización: Inlining (Expansión inline) Loop transformations (Transformaciones de bucle) Data reorganizations (Reorganizaciones de datos) Profile-directed feedback information (Información dirigida a perfil) La nueva opción -qlistfmt y las subopciones asociadas se utilizan para generar el informe XML 1.0. Esta nueva características permite al compilador generar un informe XML con los resultados de un análisis más detallado de transformación de optimizaciones, que 3

antes solo estaban disponibles con información limitada y en formato de texto. Estos nuevos informes pueden ayudarle a optimizar el rendimiento en menos tiempo. Informes mejorados de creación de perfiles Si utiliza -qreport con la opción -qpdf, obtendrá información adicional sobre el número de iteraciones de bucle, y el número de bloques y llamadas, así como un informe del número de errores de caché para determinadas funciones. Informes de reorganizaciones de datos El compilador puede ahora generar informes de reorganizaciones de datos en los archivos de lista. La sección de reorganización de datos ofrece un resumen de cómo el compilador reorganiza los datos de variables de programa. La información de reorganización de datos incluye: División de arrays Transposición de arrays Combinación de asignación de memoria Entrelazado de arrays Incorporación de arrays Los archivos de lista también incluyen la ubicación de las instrucciones de recuperación previa de datos, que son insertadas por el compilador. Informes adicionales de análisis de bucle Una nueva subopción se ha añadido a -qhot para permitir un análisis de bucle más exhaustivo. La nueva opción -qhot=level=2, combinada con -qsmp y -qreport, proporciona información sobre los nidos de bucle donde se realizó el análisis de bucle exhaustivo. Este informe está disponible en la sección de transformaciones de bucle del archivo de lista y en el nuevo archivo de lista XML. Utilización de la herramienta de seguimiento y generación de informes para conocer el uso del compilador Esta versión introduce una nueva característica que permitirá conocer la utilización que su empresa hace del compilador. Puede utilizar esta característica para determinar si el uso del compilador que hace su organización coincide con el número de licencias del compilador. Cuando la herramienta está activada, cada invocación del compilador se registra en un archivo de uso del compilador. Posteriormente, la herramienta de generación de informes de uso puede utilizarse para generar un informe del uso global del compilador en la organización. En concreto, el informe indica el número de usuarios que utilizan el compilador al mismo tiempo. Compatibilidad adicional con C++0x C++0x es el borrador del nuevo estándar del lenguaje de programación C++. XL C/C++ for AIX 11.1 incluye las siguientes características de C++ 0x: Deducción automática de tipos C99 long long Funcionalidad de preprocesador C99 adoptada en C++0x Decltype Constructores de delegación Declaraciones explícitas de creación de instancias Definiciones de espacios de nombres inline Aserción estática Plantillas variadic 4

La compatibilidad con estándares de lenguajes de programación no solo incluye una amplia funcionalidad, sino que también facilita la máxima portabilidad de su código fuente a través de distintas implementaciones del compilador. Opciones y directivas de compilador nuevas y mejoradas para una mayor flexibilidad Las opciones de compilador se pueden especificar en la línea de comandos o mediante directivas integradas en los archivos fuente de sus aplicaciones. En la versión actual del compilador, están disponibles las siguientes opciones nuevas o actualizadas: -qarch incluye una nueva subopción, -qarch=pwr7, que permite ordenar al compilador que produzca código que pueda aprovechar las plataformas de hardware de POWER7 en su totalidad. -qassert es una nueva opción y se utiliza para proporcionar información sobre las características de los archivos con el fin de ayudarle a perfeccionar las optimizaciones. -qconcurrentupdate debe ser utilizada para activar la aplicación directa de parches al generar extensiones de kernel. -qfuncsect se ha mejorado en esta versión para ayudar a reducir el tamaño de los programas de C/C++. -qfunctrace introduce llamadas en los procedimientos de seguimiento definidos por el usuario en los puntos de entrada y salida de procedimientos, lo que le proporciona una potente funcionalidad de creación de perfiles y depuración que el usuario puede personalizar. La opción -qhot del compilador es una potente alternativa para la optimización manual. -qhot permite optimizar los bucles y el lenguaje de array. Se ha añadido una nueva subopción para -qhot. La opción -qhot=fastmath permite sustituir rutinas matemáticas por otras de la biblioteca XLOPT solo si -qstrict=nolibrary está activada. -qhot=nofastmath desactiva la sustitución. Con el fin de mejorar el rendimiento, -qinline intenta incorporar funciones en lugar de generar llamadas a esas funciones, proporcionándole más control sobre esta potente optimización. -r -qipa=relink se utiliza para generar objetos que se pueden volver a vincular, preservando la información de IPA. -qkeepinlines incluye la nueva subopción de exportaciones. Puede utilizar - qkeepinlines=exports para garantizar que el compilador conserve la lista de símbolos y definiciones del archivo de objetos compartido compilado con una versión anterior del compilador. -qlanglvl incluye nuevas subopciones: -qlanglvl=autotypededuction controla si la característica de deducción automática de tipos está activada. Esta característica se utiliza para delegar la tarea de deducción de tipos de una variable automática al compilador a partir del tipo de su expresión de inicializador. -qlanglvl=c99longlong controla si la característica C99 long long está activada. Esta característica mejora la compatibilidad fuente entre los lenguajes C y C++. -qlanglvl=c99preprocessor controla si se ha activado la funcionalidad de preprocesador C99 adoptada en C++0x. Esta función se utiliza para proporcionar una interfaz de preprocesador más común para los compiladores de C y C++. -qlanglvl=decltype controla si la característica decltype está activada. Esta característica se utiliza para obtener un tipo basado en el tipo resultante de una expresión posiblemente dependiente de tipo. -qlanglvl=delegatingctors controla si la característica de constructores de delegación está activada. Esta característica se utiliza para concentrar inicializaciones comunes en un constructor. -qlanglvl=extendedfriend controla si la característica de declaraciones de confianza ampliadas está activada. Esta característica se utiliza para aceptar formularios adicionales en declaraciones de confianza que no son funciones. 5

-qlanglvl=extendedintegersafe controla si "long long int unsigned" se puede utilizar como tipo para literales enteros decimales que no tienen un sufijo que contenga u o U y no pueden ser representados por el tipo "long long int". Esta opción solo surte efecto si se ha especificado la opción -qlanglvl=c99longlong. -qlanglvl=externtemplate controla si la característica de declaraciones explícitas de creación de instancias está activada. Esta característica se utiliza para suprimir la creación implícita de instancias de una especialización de plantilla o de sus miembros. -qlanglvl=inlinenamespace controla si la característica de definiciones de espacios de nombres inline está activada. Esta característica se utiliza para definir y especializar los miembros de un espacio de nombres inline como si también fueran miembros del espacio de nombres adjunto. -qlanglvl=static_assert controla si la característica de aserciones estáticas está activada. Esta característica se utiliza para producir aserciones en tiempo de compilación para los que se genere un mensaje de error grave después de un fallo. -qlanglvl=variadic(templates) controla si la característica de plantillas está activada. Esta característica se utiliza para definir plantillas de clase o función que tienen un número cualquiera de parámetros (incluido cero). -qlibmpi se utiliza para optimizar el código de acuerdo con el comportamiento conocido de las funciones de la Interfaz de Paso de Mensajes (MPI). -qlistfmt genera el informe XML que contiene información acerca de las optimizaciones realizadas y no realizadas para las transformaciones de bucles, la reorganización de datos y la información dirigida a perfil. -qnamemangling introduce un nuevo esquema de alteración de nombres en esta versión. Se añaden nuevas subopciones a -qpdf1 y -qpdf2. Estas opciones perfeccionan las optimizaciones mediante la información dirigida a perfil (PDF). -qprefetch incluye una nueva subopción. Cuando se trabaja con aplicaciones que generan una elevada tasa de errores de caché, -qprefetch=assistthread se puede utilizar para explotar subprocesos de ayuda para la recuperación previa de datos. -qsaveopt se ha mejorado para incluir el nombre del archivo de configuración del usuario y las opciones especificadas en los archivos de configuración. -qsimd controla si el compilador puede aprovechar automáticamente las ventajas de las instrucciones vectoriales para procesadores compatibles. Cuando se genera un archivo de lista mediante la opción -qsource, es posible usar -qskipsrc para controlar si las declaraciones fuente omitidas por el compilador se mostrarán en la sección correspondiente del archivo de lista. Como alternativa, se puede usar la opción -qskipsrc=hide para ocultar las declaraciones fuente omitidas por el compilador. -qstackprotect se utiliza para proteger las aplicaciones contra el código malintencionado o errores de programación que sobrescriben o dañan la pila. -qstrict incluye una nueva subopción para permitir un mayor control de las optimizaciones y transformaciones que infringen la semántica estricta de programas. -qstrict=vectorprecision desactiva la vectorización en bucles donde podría dar resultados diferentes para las iteraciones vectorizadas y las no vectorizadas. La subopción -qtune=pwr7 se añade a -qtune para activar la optimización de las plataformas de hardware de POWER7. Funciones integradas adicionales que contribuyen a mejorar el rendimiento Como alternativa para gestionar los registros de hardware mediante lenguaje ensamblador, las funciones integradas de XL C/C++ proporcionan acceso al conjunto optimizado de instrucciones de IBM Power y permiten al compilador optimizar la programación de instrucciones para contribuir a mejorar el rendimiento del código. Entre las nuevas funciones integradas de XL C/C++ for AIX 11.1, se incluyen las siguientes: Nuevas funciones de VSX integradas y tipos de datos vectoriales para permitir el acceso directo a la potente funcionalidad vectorial de los procesadores POWER7. 6

El procesador POWER7 proporciona extensiones de recuperación previa de secuencias y control de caché que admite la recuperación previa de secuencias de almacenamiento y control de la profundidad de recuperación previa. Las nuevas funciones integradas proporcionan al programador acceso directo a la funcionalidad. Se han añadido funciones integradas para cada nueva instrucción de hardware de POWER7. Estas funciones permiten mejorar el rendimiento mediante la manipulación directa de instrucciones específicas en el código. También se han añadido funciones integradas en los siguientes casos: Función de conversión para la conversión entre declets y decimales con codificación binaria Funciones de comparación de bytes Generación de seises Posicionamiento del producto En el nivel básico, los compiladores funcionan como un puente entre las aplicaciones y las arquitecturas de hardware que dan soporte a su negocio. Los compiladores IBM han sido diseñados para liberar todo el potencial de los procesadores IBM, incluidos aquellos para distintas arquitecturas que se suministran con los populares sistemas IBM Power Systems. Los compiladores IBM han sido diseñados para mejorar la productividad de los programadores. La avanzada tecnología de compilación permite a los programadores sacar provecho del innovador rendimiento del hardware nuevo sin necesidad de cambiar el código fuente. Los desarrolladores solo tienen que centrarse en la lógica de las aplicaciones y dejar que el compilador determine la mejor forma de transformar y optimizar la generación de código para los sistemas en los que se ejecutarán las aplicaciones. Aprovechar el potencial de la informática paralela La programación paralela con IBM XL C/C++ permite aprovechar las ventajas de los sistemas multiprocesador, y al mismo tiempo mantener la compatibilidad binaria con los sistemas de un procesador. Con XL C/C++, puede utilizar las características siguientes para desarrollar aplicaciones paralelizadas: Una amplia variedad de directivas OpenMP y directivas no OpenMP SMP Interfaz de Paso de Mensajes (MPI) El módulo de biblioteca de subprocesos POSIX (Pthreads) En el caso de las aplicaciones que utilizan numerosos algoritmos y procesan datos que consumen gran ancho de banda, XL C/C++ puede utilizar las instrucciones VMX y VSX, y la SIMDización para mejorar el rendimiento de los programas. Al procesar simultáneamente múltiples elementos de datos, la velocidad del código ejecutado puede aumentar, con la ventaja añadida de que podría no ser necesario volver a escribir el código fuente. Potente optimización del rendimiento sin complicaciones El código que está bien escrito, ha sido minuciosamente depurado y es totalmente compatible con los estándares de su lenguaje puede sacar el máximo provecho de la tecnología de optimización de XL C/C++ y beneficiarse de un aumento del rendimiento. Las características de optimización y hardware de XL C/C++ ayudan a mejorar la productividad del desarrollador, y el compilador puede generar código que aprovecha el rendimiento avanzado tanto en el hardware nuevo como en el existente, generalmente con cambios mínimos en el código fuente. IBM XL C/C++ admite varios niveles de transformaciones de código cada vez más exhaustivas. Técnicas avanzadas de optimización como el análisis entre procedimientos (IPA) y la información dirigida a perfil (PDF) están disponible 7

solo en los niveles más elevados de optimización, pero pueden generar un mayor número de mejoras de rendimiento. IPA analiza y optimiza su aplicación como si fuera un todo, en lugar de archivo por archivo. PDF genera información que ordena al optimizador que haga hincapié en las ventajas que favorecen el código que se ejecuta con más frecuencia. Obtenga un mayor rendimiento de la plataforma IBM sin necesidad de hacer cambios en el código fuente, o realizando cambios mínimos. Actualícese a la última versión del compilador IBM XL C/C++, que incorpora los nuevos avances en optimización y compatibilidad con la tecnología de hardware. XL C/C++ y Fortran para multiplataforma IBM XL C/C++ for AIX 11.1 forma parte de la familia más amplia de compiladores IBM XL C, C++ y Fortran, que admiten múltiples plataformas, como AIX, IBM Power Systems, z/os, z/vm, Linux, Blue Gene/L, Blue Gene/P y la arquitectura Cell Broadband Engine. La estructura modular de estos compiladores proporciona optimizaciones y funcionalidad para todas las plataformas y lenguajes. Además, todos los productos proceden de una base de código común, por lo que las características y optimizaciones se analizan en múltiples idiomas y plataformas. El uso de una base de código común, junto con la adhesión a los estándares internacionales, facilita la portabilidad en el nivel de código fuente de las aplicaciones entre plataformas IBM. Basados en una arquitectura común, los compiladores XL C, XL C/C++ y XL Fortran fomentan la coherencia y la fiabilidad en numerosas plataformas IBM. Estándares de lenguajes de programación, especificaciones del sector y otras cuestiones que influyen en el lenguaje Estándares de lenguajes de programación XL C/C++ admite la última revisión del estándar ISO C++ 2003 (ISO/IEC 14882:2003). XL C/C++ también admite la última revisión del estándar C ISO/IEC 9899:1999, también llamado C99, una importante actualización del estándar C. C99 introduce una serie de características nuevas para el lenguaje C, como: Tipo de datos complejos Compatibilidad con arrays de longitud variable Literales compuestos Miembros de arrays flexibles Los principales cambios en el estándar de C++ se reflejan en "Technical Corrigendum 1", que detalla trabajos en curso en informes de errores obtenidos en todo el mundo. Estos elementos se combinan para dar lugar a los estándares de C++ 2003. Estos cambios están disponibles a partir del compilador XL C/C++ for AIX 7.0. Otras actualizaciones se reflejan en C++ Library Extensions Technical Report (TR1) en 2001. Estos informes proponían extensiones para la biblioteca de C++. La compatibilidad incluye las bibliotecas de hash y características de C++ Library Extensions Technical Report en el compilador XL C/C++ for AIX 8.0. Otras incorporaciones son los punteros inteligentes, utilidades de metaprogramación de plantillas y funciones matemáticas especiales, que son útiles con fines de investigación. XL C/C++ for AIX 10.1 proporciona compatibilidad con el estándar C++0x, que es el borrador del nuevo estándar del lenguaje de programación de C++. XL C/C++ for AIX 11.1 sigue basándose en la compatibilidad con el estándar C++ 0x. Este estándar todavía no se ha adoptado oficialmente, pero el compilador XL C/C++ admite algunas de sus características. No obstante, estas características podrían modificarse o eliminarse más adelante, ya que el estándar aún está pendiente de aprobación. 8

Especificaciones del sector y otras cuestiones que influyen en el lenguaje La familia de compiladores IBM XL está muy vinculada a la informática paralela y de alto rendimiento. Los compiladores XL utilizan la interfaz de programación AltiVec/VMX y la especificación OpenMP 3.0 para el modelo de programación de memoria compartida. La versión 11.1 de XL C/C++ for AIX también proporciona compatibilidad con el conjunto de instrucciones VSX de la arquitectura POWER7. IBM es miembro de la Standard Performance Evaluation Corporation (SPEC). La misión de SPEC es identificar y respaldar estándares de comparación que favorezcan la informática de alto rendimiento durante muchos años. SPEC lanzó SPEC CPU2006 en 2006. CPU2006 es un estándar de comparación dirigido al procesador de sistema, el subsistema de memoria y el compilador. IBM continúa participando en SPECCOMP, que mide el rendimiento de estándares de comparación paralelos mediante OpenMP. La compatibilidad con los estándares de lenguajes de programación facilita la portabilidad del código fuente entre distintas implementaciones de compilador. IBM Rational Developer for Power Systems Software IBM Rational Developer for Power Systems Software V7.6 se puede adquirir con este programa. IBM Rational Developer for Power Systems Software incluye ahora un completo conjunto de herramientas de desarrollo integradas que son compatibles con el compilador XL C/C++ for AIX. IBM Rational Developer for Power Systems Software ofrece funcionalidad de gestión, búsqueda, edición, análisis, generación y depuración de archivos, todo ello integrado en una plataforma Eclipse. Los desarrolladores de XL C/C++ podrán ahora obtener las ventajas de productividad de migrar de un entorno de herramientas de desarrollo de la línea de comandos más antiguas y basadas en texto a un entorno de desarrollo integrado y mejorado. IBM Rational Developer for Power Systems Software 7.6 se utiliza con las versiones 8.0, 9.0, 10.1 y 11.1 de XL C/C++ for AIX. Si vende licencias del compilador XL C/C++ for AIX, tal vez le interese adquirir licencias para Rational Developer for Power Systems Software V7.6. Información adicional Esta versión reducida del anuncio no contiene enlaces a algunas de las secciones mencionadas. Para obtener más información y acceder a estas secciones, consulte la carta de anuncio completa (en inglés). ZP10-0114 Condiciones de uso Pueden solicitarse los servicios y productos de IBM que se anuncien y estén disponibles en su país conforme a los acuerdos, plazos, condiciones y precios estándar aplicables que se encuentren en vigor en ese momento. IBM se reserva el derecho a modificar o retirar este anuncio sin previo aviso. Este anuncio tiene carácter exclusivamente informativo. La referencia a otros productos en este anuncio no implica necesariamente que dichos productos se anuncien, o que se tenga la intención de anunciarlos, en su país. Puede encontrar términos de uso adicionales en http://www.ibm.com/legal/us/en/ Para obtener la información más reciente acerca de los productos de IBM, póngase en contacto con su representante o distribuidor de IBM, o visite la página de contactos internacional de IBM http://www.ibm.com/planetwide/ 9

13 de abril de 2010Tabla de contenidosopciones del documentoopciones de contactollame yaversión para imprimirvolver arriba, con fecha 10 de julio de 2001, con fecha 10 de julio de 2001, con fecha 10 de julio de 2001, con fecha 10 de julio de 2001, con fecha 10 de julio de 2001Anuncio de software ZP10-0114 de IBM Europe, Middle, con fecha 13 de abril de 2010IBM es una marca comercial registrada como 10