| 開発者 | IBM |
|---|---|
| 安定版リリース | 17.1.1 (AIX on Power、Linux on Power)、1.1 (z/OS) / 2022 年 9 月(Linux on Power)、2022 年 11 月(AIX on Power)、2022 年 5 月(z/OS) |
| オペレーティング·システム | クロスプラットフォーム: Linux (POWER および z アーキテクチャ)、AIX、Blue Gene/Q、z/OS、z/VM |
| 利用可能 | 多言語 |
| タイプ | ソフトウェア開発 |
| ライセンス | 独自 |
| Webサイト | www.ibm.com/products/c-and-c-plus-plus-compiler-family |
XL C/C++ は、 IBM がサポートする環境向けの IBM独自の最適化C / C++コンパイラーの名前です。
コンパイラ
IBM XL コンパイラーは、フロントエンド (さまざまなプログラミング言語用)、プラットフォームに依存しない高レベル オプティマイザー、および特定のハードウェアとオペレーティング システムをターゲットとするプラットフォーム固有の低レベル オプティマイザー/コード ジェネレーターで構成されるモジュール化されたコンポーネントから構築されています。XL C/C++ コンパイラーは、POWER、BlueGene/Q、およびIBM Zハードウェア アーキテクチャーをターゲットとしています。
最適化
POWERおよびz/OS XL C/C++ [1]コンパイラーに共通する高レベルオプティマイザーは、手続き間分析、プロファイル指向フィードバック、ループおよびベクトル最適化などのプラットフォームに依存しない最適化を使用してソースプログラムを最適化します。
各プラットフォームの低レベル オプティマイザーは、関数レベルの最適化を実行し、特定のオペレーティング システムおよびハードウェア プラットフォーム向けに最適化されたコードを生成します。
特定のコンパイルに対して実行される特定の最適化は、オプション制御 (O2 ~ O5) で選択された最適化レベルと、プロシージャ間分析やループ最適化などのその他の最適化関連オプションによって異なります。
例えば、AIX上のXLコンパイラは、2010年5月にSPEC CPU2006浮動小数点スコア71.5 [2]、2006年8月に4051 [3]というスコアを達成しました。
IBM i
IBM i シリーズの C/C++ 用 XL コンパイラーは ixlc と呼ばれます。これは、CRTCPPMOD / CRTPGM システム コマンドと同じ資産に基づく qsh CLI です。C++98 と互換性があり、部分的に C++11 とも互換性があります。2011 年に廃止されました。
IBM AIX と Power 上の Linux
XL C/C++ for AIX on Power (17.1.1) および XL C/C++ for Linux on Power (17.1.1)の現在のバージョン[4]は、オープンソースのClangフロントエンド (Clang/LLVM オープンソース プロジェクトの一部) に基づいています。特に、XL C/C++ for AIX 17.1.0 は LLVM Clang 13 に基づいています。[5]両方のコンパイラーは、C11、C++03、C++11、および C++14 をサポートしています。XL C/C++ for Linux on Power は少なくとも C++17 をサポートしていますが、[4] C++14 より後の一部のライブラリー機能は、XL C/C++ for AIX on Power では使用できない可能性があることに注意してください。[6]
ライセンス
[7] 2016年6月、IBMは、無制限の実稼働使用のための無償かつフル機能のエディションであるXL C/C++ for Linux Community Editionを発表しました。[8]
XL C/C++ for AIX 16.1 および XL Fortran for AIX 16.1 では、クラウドベースのユースケースにさらなる柔軟性を提供するために、新しい月額料金オプションが提供されています。この料金モデルは期間ベースまたはサブスクリプション ベースで、ソフトウェア サブスクリプションとサポートが含まれています。
IBM Open XL コンパイラーは月単位のライセンス (仮想プロセッサー コアごと) を提供していますが、ユーザー ベースのライセンス (許可ユーザー ライセンスと同時ユーザー ライセンス) も引き続き利用可能です。
IBM Z
z/OS XL C/C++ コンパイラーは、IBM Z® システムを活用します。ハードウェアの使用率を最大化し、アプリケーションのパフォーマンスを向上させながら、z/OS 上で高性能なビジネス アプリケーションとシステム プログラムを開発できます。IBM z/OS XL C/C++ は、z/OS Language Environment® と Runtime Library Extensions の基本要素によって提供されるサービスを使用します。C/C++ ソース内の組み込み CICS® および SQL ステートメントをサポートしているため、CICS および Db2® 環境内での C/C++ の操作が簡素化されます。IBM Application Delivery Foundation for z/OS と連携して動作します。
IBM® Open XL C/C++ 1.1 for z/OS® は、オープン ソースの LLVM インフラストラクチャに完全に基づいた、z/OS 上の最新の C/C++ コンパイラです。Open XL C/C++ 1.1 は、C17/C18 および C++17 言語標準機能までサポートし、IBM z16™ メインフレームの機能を活用します。これは、分散プラットフォームからアプリケーションを移植する z/OS UNIX System Services ユーザーに最適です。Open XL C/C++ 1.1 は、z/OS 2.4 または z/OS 2.5 で z/OS XL C/C++ (オプションで有料の機能) を有効にしたユーザー向けの無償のアドオン機能として利用できます。
製品
XL C/C++ および Open XL C/C++ コンパイラ ファミリは、次の製品で構成されており、最新バージョンとリリース日が判明しています。
- Open XL C/C++ for z/OS (バージョン 1.1、2022 年 5 月)
- Open XL C/C++ for AIX on Power (バージョン 17.1.1、2022 年 11 月)
- Open XL C/C++ for Linux on Power (バージョン 17.1.1、2022 年 8 月)
- XL C for AIX (バージョン 13.1.3、2015 年 12 月)
- XL C/C++ 2.4.1 for z/OS 2.4 (2019 年 12 月)
- z/OS XL C/C++ (バージョン 2.4、2019 年 9 月)
- XL C/C++ for z/VM (バージョン 1.3、2011 年 12 月)
- XL C/C++ for Linux on z Systems (バージョン 1.2、2016)
- XL C/C++ for Blue Gene/Q (バージョン 12.1、2012 年 6 月)
- XL C/C++ Advanced Edition for Blue Gene (バージョン 9.0、2007 年 9 月、2009 年 8 月廃止)
参照
- IBM VisualAge – 前身製品
- コンパイラのリスト
参考文献
- ^ z/OS XL C/C++
- ^ CPU2006 浮動小数点
- ^ SPEC CPU2000 浮動小数点
- ^ ab IBM Open XL C/C++ for Linux on Power 17.1.1
- ^ 新しい LLVM および Clang コンパイラ インフラストラクチャへの移行
- ^ 「IBM Open XL C/C++ for AIX」 - 17.1.0 - 言語サポート
- ^ XL C/C++ for AIX 評価版
- ^ XL C/C++ for Linux コミュニティ エディション
外部リンク
- 製品ドキュメント: Open XL C/C++ for AIX 17.1.0
- 製品ドキュメント: XL C/C++ for Linux 16.1.1
- 製品ドキュメント: XL C/C++ for AIX 16.1
- 製品ドキュメント: XL C for AIX 13.1.3
- 製品ドキュメント: Open XL C/C++ for z/OS 1.1
- 製品ドキュメント: z/OS XL C/C++ 2.4
- 製品ページ: z/OS XL C/C++
- コミュニティ: Power® コミュニティ上の IBM C/C++ および Fortran コンパイラー
- コミュニティ: IBM Z 用 IBM C/C++ コンパイラー
