インテル® Fortran コンパイラー・クラシック (ifort) の廃止

A person with glasses in a dark room looking at computer screen that's displaying codes or programming reflected on the glasses.

この記事は、インテル® コミュニティーのブログに公開されている「Deprecation of The Intel® Fortran Compiler Classic (ifort)」の日本語参考訳です。原文は更新される可能性があります。原文と翻訳文の内容が異なる場合は原文を優先してください。


ギリシアの哲学者ヘラクレイトスは、人生において唯一不変なものは変化であるという考えを唱えたとされています。彼の著書の残された数少ない断片の 1 つには、次のように書かれています。

「万物は流転している。同じ川に二度入ることはできない。」

この変化という考え方はソフトウェアにも当てはまります。このブログでは、インテル® Fortran コンパイラー・クラシック (ifort) の廃止通知と、ifort を利用するプロジェクトへの影響について説明します。インテルは 2023年11月20日に、インテル® Fortran コンパイラー・クラシック (ifort) の廃止および削除を発表しました。廃止通知は「リリースノート」に含まれており、本記事の最後にも掲載しています。以下は、この廃止通知を理解するのに役立ついくつかの事実です。

  1. 「廃止」は「削除」とは異なります。「廃止」とは、機能または製品を古いものとしてマークし、その使用を非推奨とし、将来段階的に廃止される可能性があることをユーザーに警告する行為またはプロセスです。すぐに機能が削除されるわけではなく、一定の期間、継続的な互換性が提供されます。
  2. インテルはまた、インテル® Fortran コンパイラー・クラシック (ifort) が 2024年下旬を目処に削除されることを、この廃止通知でユーザーに通知しています。2023年11月時点ではまだ利用可能ですが、インテル® Fortran コンパイラー・クラシック (ifort) は、廃止および削除される予定です。
  3. インテルは、最新のインテル・テクノロジーのサポートや業界をリードする Fortran コンパイラーへのアクセスなど、継続的な製品サポートを得るため、インテル® Fortran コンパイラー (ifx) に移行することを推奨しています。
  4. 発表に記載されているように、ifort は 2024年末に「廃止」されます。ifort の廃止には 2 つのイベントが含まれます。1 つ目は、インテル® Fortran コンパイラー・クラシック (ifort) が、2024年後半に予定されているバージョン 2025 および将来のすべてのリリースのパッケージやリポジトリーで提供されなくなります。2 つ目は、ダウンロードから ifort が削除されます。優先サポートをお持ちのお客様は、ifort がリリースパッケージで提供されなくなった後も、さらに 1 年間はインテル® レジストレーション・センター (IRC) からインテル® Fortran コンパイラー・クラシックをダウンロードすることができます。つまり、優先サポートをお持ちのお客様は ifort を 2025年後半まで利用できます。2025年後半のバージョン 2026 のリリースを以って、インテル® Fortran コンパイラー・クラシック (ifort) のすべてのダウンロードは、すべてのお客様の IRC およびすべてのリポジトリーから削除されます。
  5. 廃止通知の日付以降、ifort がすべてのダウンロードから完全に削除される日まで、セキュリティー・アップデートなどの重要かつ必要な修正のみが ifort に組み込まれます。

インテル® Fortran コンパイラー (ifx) へ移行する理由

私はこれまで、こちらを含む多くの記事とウェビナーで、インテルが Fortran コンパイラーを ifx へ移行することについて説明してきました。インテル® Fortran コンパイラー (ifx) は、インテル® Fortran コンパイラー・クラシック (ifort) のフロントエンドとランタイム・ライブラリーをベースに、最新の LLVM ベースのバックエンド・コンパイラー・テクノロジーを採用しており、従来の DEC 拡張機能、優れた Fortran 標準規格のサポート、強力なコンパイラー・ディレクティブなど、馴染みのある ifort と同じ Fortran 機能を提供します。したがって、インテルの Fortran に期待されるものがすべてが揃っています。さらに、ifx は、インテルの最新の CPU および GPU 製品向けに、OpenMP* TARGET やインテル® GPU への自動 DO CONCURRENT オフロードなどの新機能を追加し、さらなる高速化を実現します。

インテルは、ifx がインテルのフラッグシップ・コンパイラーとしての役割を担う準備が整ったと考えており、Visual Studio* 統合のすべての新規プロジェクトで、デフォルトの Fortran コンパイラーを ifx に変更しました。必要に応じて、コンパイラーを変更したり、インストールされている他のバージョンの ifort や ifx を選択することができます。詳細は、デベロッパー・ガイドおよびリファレンスのこちらのページ (英語) を参照してください。

この変更による開発者と開発への影響

  • コンパイル時間が最大 18% 短縮され、生産性が向上します。
  • 最新および将来のインテル® プロセッサー向けに最適化できます。
  • インテル® GPU でコードを高速化できます。
  • サニタイザー (メモリー、アドレス、スレッド) などの新しい LLVM コミュニティー・ツールにより、メモリーやスレッドの問題を発見し、修正できます。
  • Fortran 2023 および OpenMP* 5.2、6.0 など、最新の標準規格がサポートされます。
  • 将来にわたってインテルの Fortran がサポートされます。

ifort にはないバグが ifx で見つかることはありますか?

可能性はあります。ifx と ifort は 100% 互換性があるわけではありません。ifort と ifx のフロントエンドに同じコードを使用することで、違いを最小限に抑えることができます。ただし、フロントエンドから先はそれぞれのコンパイラーに固有で、最適化やコード生成は異なります。コンパイラー・オプションがわずかに異なる場合であっても、結果が異なることがあります。この違いに対応できるように支援するため、ifx へ移行する ifort 向けのポーティング・ガイドを公開しています。ポーティング・ガイドでは、違いとその対応方法を説明しています。ifx へ移行する際に参考にしてください。インテルでは、皆様が ifort から ifx への移行を可能な限り円滑に行えるよう努めていますが、あるコンパイラーから別のコンパイラーに変更したり、あるメジャーバージョンから別のメジャーバージョンに変更することで、違いが生じることはよくあります。

新しい警告やエラーメッセージ、ランタイムクラッシュ、数値の違いなど、ifx で問題や不具合が見つかった場合、どこに報告したらよいですか?

優先サポート (英語) をお持ちの場合は、オンライン・サービス・センター (英語) でサポートチケットを作成してください。優先サポートをお持ちでない場合は、インテル® Fortran コミュニティー・フォーラム (英語) に問題や質問を投稿してください。問題を報告する前に、インテル® Fortran コンパイラーの最新リリースとアップデートを使用していることを確認してください。ifort と ifx のバージョンは、-V -what コンパイラー・オプションで確認できます。問題の報告時にこの情報を含めてください。ifx は急速に進化しているため、最新バージョンの ifx を使用していない場合、アップグレードを求められることがあります。

まだ ifx に移行する準備ができていないため ifort を使い続ける場合、どのような選択肢がありますか?

ifort の廃止/削除予定については前述のとおりです。有効な優先サポート (英語) をお持ちでないお客様は、2024年後半まで ifort と ifx のバージョンをダウンロードすることができます。有効な優先サポートをお持ちのお客様は、それ以降も旧バージョンのダウンロードに関するこちらの記事 (英語) に記載されているとおり、ifort の旧バージョンにアクセスできます。2025年後半には、ifort のすべてのダウンロードがインテルのリポジトリーおよびインテル® レジストレーション・センターのダウンロードから削除されます。これらの日付を考慮して、ifort から ifx への切り替えの適切なタイミングを判断してください。

インテル® Fortran コンパイラー・クラシックのインストーラー・パッケージのコピーを保管しておき、将来も使い続けることはできますか?

  1. Windows* ユーザーは、現在またはそれ以前のバージョンのインテル® Fortran ソフトウェアを、新しいバージョンの Microsoft* Visual Studio* や Microsoft* Windows* のシステムに移行することはできません。コンパイラー製品のサポートは、お使いのバージョンがパッケージ化された時点の Microsoft* の OS および Visual Studio* の特定のバージョンを対象としています。そのため、新しいバージョンの Windows* や Visual Studio* では動作しない場合があります。古いコンパイラーに必要なソフトウェア環境については、「リリースノート」の「システム要件」のセクションをお読みください。特に、Visual Studio* の最近のバージョンは、2023年半ば以前のインテル® Fortran リリースとは互換性がありません。古いコンパイラーの統合機能は、最近の VS 2022 v17.2+ バージョンでは動作しません。今後の Microsoft* Visual Studio* や Windows* のアップデートにより、ソフトウェアのインストールが破損する可能性があります。インテルは、インテル® Fortran コンパイラー (ifx) への移行を推奨します。
  2. Linux* の場合、インテル® Fortran の特定のバージョンは、特定の Linux* ディストリビューションの特定のメジャーバージョンとマイナーバージョンでリリースされる直前に検証されます。Linux* の将来のバージョンで既存または古いインテル® Fortran パッケージを使用することは正式にサポートされていません。動作するかどうかは分かりません。「リリースノート」と「システム要件」にサポートされている正確なディストリビューションとバージョンが記載されています。これらの OS バージョンは、検証されサポートされています。一般に、Linux* ディストリビューションの LTS (Long-Term Support) リリースは、合理的な数のバージョンで下位互換性を提供します。
  3. Windows* と Linux* の両方について、廃止通知の日付以降、ifort がすべてのダウンロードから完全に削除される日まで、ifort にはセキュリティー・アップデートなどの重要かつ必要な修正のみが組み込まれることに注意してください。

古いインテル® Parallel Studio XE で ifort を使用している場合

インテル® Parallel Studio XE はサポートが終了しています。インテルは、最新のインテル・テクノロジーのサポートや業界をリードする Fortran コンパイラーへのアクセスなど、継続的な製品サポートを得るため、インテル® Fortran コンパイラー (ifx) に移行することを推奨しています。機能やセキュリティー・アップデートなど、サードパーティー・コンポーネントの最新バージョンを含む、製品の最新リリースに移行することを推奨します。

古いインテル® Parallel Studio XE のライセンスは使用できなくなりますか?

古いインテル® Parallel Studio XE (PSXE) で ifort を使用している場合、それらのライセンスは ifort の廃止による影響を受けません。

インテル® Fortran コンパイラーの開発およびサポートチーム一同、これまで ifort とともに歩んでくださった皆様に感謝いたします。そして、皆様とともに新たに ifx の旅を開始できることを願っています。

廃止通知: インテル® Fortran コンパイラー・クラシック (ifort) は廃止されることになりました。2024年後半のリリースで削除される予定です。Windows* および Linux* の継続的なサポート、新しい言語のサポート、新しい言語機能、最適化のサポートが提供される、LLVM ベースのインテル® Fortran コンパイラー (ifx) へ移行することを推奨します。ifx の詳細は、『インテル® Fortran コンパイラー・デベロッパー・ガイドおよびリファレンス』 (英語) および ifx へ移行する ifort 向けのポーティング・ガイドを参照してください。

著者紹介

インテル® Fortran チームの最新情報は、X (旧 Twitter) の @iCompilersRon で発信しています。

Ron Green #IAmIntel

Ron Green は、インテル® Fortran コンパイラー・チームのマネージャーとして、インテル® Fortran とソフトウェア & 先端技術部門 (SATG) の顧客推進に取り組んでいます。インテル® Fortran コミュニティー・フォーラム (英語) のモデレーターを努めており、インテル® デベロッパー・ゾーンの Black Belt Developer です。30年以上にわたり、HPC 分野の Fortran 開発者およびコンサルタントとして豊富な経験を持ち、インテルの開発ツールおよびコンパイラー・チームには 15年以上在籍しています。

日本語サポートのご案内

エクセルソフトでは、インテル® ソフトウェア開発ツールの優先サポートを日本語で提供しています。