Полезные сведения о функциях

Поддержка последней версии z/Architecture

Поддерживаются новейшие серверы IBM® z14™ с новыми функциями использования аппаратного обеспечения. Компилятор поддерживает средства, доступные в системах IBM z14, и обеспечивает поддержку векторного программирования, что позволяет использовать преимущества векторной обработки для z/Architecture®. z/OS XL C/C++ предоставляет заказчикам возможности аппаратного уровня посредством опций, директив (в том числе директивы pragma) и встроенных функций на уровне исходного кода. Кроме того, с помощью операторов встроенного ассемблерного кода можно вставлять последовательности команд z/Architecture.

METAL C и возможности системного программирования

Опция METAL предназначена для поддержки разработки системных программ для z/OS®. Специалисты с ограниченными навыками программирования на ассемблере высокого уровня (HLASM) могут разрабатывать оптимизированные системные программы, используя синтаксис высокоуровневого языка C. Программисты получают возможность быстро переориентировать системные программы, написанные на Metal C, на новые архитектуры z Systems®, перекомпилировав их для включения оптимизаций для нужной архитектуры.

Диагностика и отладка программ

Повышение продуктивности работы программистов и снижение расходов на обслуживание благодаря контролю за соблюдением семантики языка программирования и за надежностью генерируемого кода. Можно также проверять, отслеживать и контролировать выполнение программ на C и C++ при помощи стандартных инструментов символьной отладки, таких как IBM Debug for z Systems и dbx.

Соответствие стандартам

Компилятор поддерживает стандарты C89, C99, C++98, C++03 и различные особенности C11 и C++11, позволяя просто переносить и консолидировать приложения на C/C++ в z/OS для повышения производительности платформы. Компилятор XL C/C++ также поддерживает различные расширения языка GNU C/C++ и предоставляет функции обеспечения совместимости, облегчающие перенос приложений на языке GNU C/C++ в z/OS. Для улучшения параллельных вычислений поддерживаются директивы OpenMP 3.1, управляющие распараллеливанием.

Оптимизация с учетом результатов профилирования

Учет результатов профилирования (Profile-directed feedback, PDF) - методика оптимизации, в рамках которой компилятор собирает информацию о программе при ее запуске с типичными входными данными и генерирует информацию, указывающую оптимизатору на то, что предпочтение должно отдаваться коду, исполняемому чаще; эта функция доступна на высоких уровнях оптимизации и может значительно улучшить производительность.

Поддержка оптимизации автоматической векторизации (SIMDization)

Поддерживается оптимизация автоматической векторизации (SIMDization), при которой для генерации кода применяются SIMD-инструкции.

Расширенные методы оптимизации

Предоставляются современные методы компиляции для повышения производительности приложений. Компилятор поддерживает несколько уровней оптимизации, позволяя настраивать ее "активность". Кроме того, поддерживаются расширенные методы оптимизации, такие как оптимизация циклов с преобразованием высшего порядка (high-order transformation, HOT), оптимизация методом межпроцедурного анализа (interprocedural analysis, IPA) и оптимизация с учетом результатов профилирования (PDF), которые могут привести к значительному улучшению производительности.

Библиотеки для высокопроизводительных математических вычислений

Библиотека MASS (Mathematical Acceleration Subsystem) позволяет ускорить выполнение элементарных математических функций и может служить высокопроизводительной альтернативой стандартной библиотеке математических функций, которая является частью среды выполнения z/OS XL C/C++. Библиотека ATLAS (Automatically Tuned Linear Algebra Software) предоставляет поддержку функций линейной алгебры для библиотек BLAS (Basic Linear Algebra Subprograms) и LAPACK (Linear Algebra PACKage), которые обычно применяются в решениях для бизнес-аналитики и оптимизации.

Межплатформенная совместимость

Поддерживается перенос приложений на C/C++ с платформ IBM AIX® и Linux на платформу IBM z/OS. Данный компилятор использует те же компоненты оптимизации, что и компиляторы IBM XL C/C++ for AIX и IBM XL C/C++ for Linux, поэтому указанные улучшения являются общими для всех трех компиляторов. Приложения после переноса можно настроить для работы на новой платформе z/OS, чтобы использовать по максимуму преимущества нового аппаратного обеспечения z Systems.

Поддержка UNIX System Services в z/OS

Службы z/OS UNIX System Services предоставляют возможности в среде z/OS, облегчающие реализацию или перенос приложений в открытой распределенной среде. Для доступа прикладных программ z/OS XL C/C++ к z/OS UNIX используются привязки к C/C++ с помощью элемента Language Environment®. z/OS UNIX, элемент языковой среды Language Environment и компиляторы z/OS XL C/C++ вместе образуют интерфейс прикладных программ (API), который поддерживает отраслевые стандарты.

Интеграция с IBM Application Delivery Foundation

IBM® Application Delivery Foundation for z Systems предоставляет базовый набор инструментов для создания и обслуживания приложений для сред z/OS. Поддерживается интеграция компилятора со следующими инструментами, входящими в данный продукт: i) IBM Developer for z Systems Enterprise Edition, в состав которого входит IBM Debug for z Systems, ii) IBM Fault Analyzer for z/OS и iii) IBM Application Performance Analyzer for z/OS.

Поддержка встроенных операторов CICS и SQL

Упрощение кода на C/C++ в средах CICS и DB2 благодаря поддержке встроенных выражений CICS и SQL в исходном коде на C/C++ - они выполняются минуя препроцессор.

Техническая информация

Требования к программному обеспечению

z/OS 2.3

    Требования к аппаратному обеспечению

    z/OS V2R3 поддерживается на следующих серверах IBM z Systems:

    • IBM z14
    • IBM z13 (z13)
    • IBM z13s™ (z13s)
    • IBM zEnterprise® EC12 (zEC12)
    • IBM zEnterprise BC12 (zBC12)

    Вам также могут быть интересны

    IBM XL C/C++ for AIX

    Компилятор для приложений C/C++, предназначенных для архитектуры IBM Power Systems.

    Подробнее

    IBM Toolkit for Swift - Linux on z Systems

    Разработка и развертывание приложений на Swift для Linux on z Systems

    Подробнее

    IBM Enterprise COBOL for z/OS

    Повысьте производительность своих важнейших бизнес-приложений

    Подробнее

    IBM Automatic Binary Optimizer for z/OS

    Повысьте производительность приложений на языке COBOL одним щелчком

    Подробнее

    IBM XL C/C++ for Linux

    Повысьте производительность приложений с помощью передовых технологий компиляции

    Подробнее