フリーのFortran 90/95コンパイラには, gfortrang95がある. gfortranは, gcc (GNU compiler collection) に含まれているFortranコンパイラである. かつては, g77が含まれていたがg77はgcc-4.Xではサポートされていない.

g95は, gcc-4.0に基づいたFortranコンパイラである. gfortranは, もともとg95から分離してgccの一部として開発が始まったものである. それぞれ独立して開発が進められた結果, 現在ではソースはかなり異なったものとなっているそうである. g95は「オリジナル」「元祖」でgfortranは「オフィシャル」「本家」だと言える.

二つのコンパイラは開発体制が異なる. g95は, 協力者からのバグ報告を受けながら, 開発を始めたAndy Vaught氏がひとりでソースコードを管理している. gfortranは, 複数の開発者により開発されている.

g95は歴史が長い分, より多くのプログラムのコンパイルが試されていて, 安定していることが特長である. g95のサイトにあるリストには, コンパイルができたことが確認されているプログラムが多数列挙されている. g95は, より多くのFortran 2003の機能を実装している. gcc全部をコンパイルしなくて良いので, g95の構築は早く終わるので, Fortranさえ使えればよいのなら導入が簡単である.

gfortranは, gccに含まれている点が強みである. Fortran 90/95の実装には差があまりないようである. マルチコア, マルチプロセッサを搭載したパソコンやクラスタでOpenMPを使ったプログラムを使いたい場合は, gfortranを使う必要がある.

g95は, gcc-4.2で導入されたGNU版OpenMP GOMPへの対応の予定はないが, Fortran 2008の仕様に含まれることになったco-arrayの実装に取り組んでいるそうである. gfortranはgccとの統合を進めて, 多機能化やパフォーマンスの改善を進めていくのだろう. g95は, Fortranの規格に準拠した, ユーザが使いやすいコンパイラを志向しているようである.

gfortranには勢いがあるようだが, ここでは安定性に一日の長があると思われるg95-0.90について解説していく. g95のマニュアルには, 私が翻訳した日本語版があるので必要に応じて参照されたい.