DAP FORTRAN とは

DAP FORTRANは、FORTRANの非IO部分を拡張し、ICL Distributed Array Processor(DAP)用の並列コンピューティングをサポートする構造体を使用していました。 DAPには、64×64シングルビットプロセッサを搭載したSIMD(Single Instruction Multiple Data)アーキテクチャがありました。
DAP FORTRANの主な特徴は次のとおりです。
 それは行列演算とベクトル演算を持っていました。割り当ては、論理マスクの下で実行できるので、割り当ての対象内のいくつかの要素だけが変更されました。負の面では、基礎となるハードウェアのサイズ、すなわち64×64マトリクスまたは64要素ベクトルを使用して演算が実行された。
宣言では、次のように1つまたは2つのエクステントを省略できます。
省略された寸法は、DAPの片側のサイズである64として取られた。算術演算の速度は、値のビット数に大きく依存していました。 INTEGER * n予約済み8nビットnは1〜8、REAL * n予約済み8nビットnは3〜8です。LOGICALは1ビットを予約しています。
しかし、DAP FORTRANは2つの相反する目的の間に落ちた。 DAP施設を効果的に活用する必要がありました。しかし、シリアル・アーキテクチャーに密接に関連した設計の主要な言語がFORTRANであった科学的コンピューティング・コミュニティーにもアクセス可能でなければならなかった。使用された方言は、初期バージョンのFORTRAN 77標準に基づいており、FORTRAN 77と古いFORTRAN 66標準の両方とのミスマッチを持つICLの2900シリーズFORTRANでした。
DAP FORTRANは標準FORTRANとは大幅に異なり、マシンは標準FORTRANプログラムを受け入れたり最適化することができませんでした。一方、設計上拡張可能な他の現代言語(特にALGOL-68)と比較して、FORTRANはこの作業にはあまり適していませんでした。その結果は目立たないほどエレガントで、多くの新しい学習が必要でした。操作上、演算データを配列の内外に転送するオーバーヘッドがあり、64×64マトリックスに適合しない問題は、境界を処理するために複雑さを増しました(65×65はおそらく最悪のケースでした)。しかし、アーキテクチャに適した問題現在のCrayパイプラインアーキテクチャよりも2桁程度優れている可能性があります。
DAPのそれ以降のバージョンでは、代わりにFortran-Plusを使用しました。これはFORTRAN 77に基づいており、より柔軟な索引付けを行いました。特に、ユーザーが作成した配列を基になるハードウェアに自動的にマップしました。