Loading article…
C*(またはCスター)は、同期セマンティクスを持つANSI Cのデータ並列スーパーセットです。
C*は、コネクションマシンCM-2以降の機種向けに、 *LispやCM-Fortranに代わる言語として1987年に開発されました。C*言語は、C言語に「ドメイン」データ型と、ドメイン内での並列実行のための選択文を追加したものです。
CM-2モデルの場合、C*コンパイラはコードをシリアルCに変換し、PARIS(並列命令セット)関数を呼び出し、生成されたコードをフロントエンドコンピュータのネイティブコンパイラに渡しました。生成された実行ファイルはフロントエンドコンピュータ上で実行され、PARIS呼び出しはコネクションマシン上で実行されました。
CM-5およびCM-5Eでは、並列C*コードは処理要素上でSIMD方式で実行され、シリアルコードはPM(パーティションマネージャ)ノード上で実行されました。PMは、CM-2と直接比較した場合、「フロントエンド」として機能します。1993年8月27日時点でのC*の最新バージョンは6.xです。 「Parallel C」( Unified Parallel Cとは混同しないように)と呼ばれる未実装の言語がC*の設計に影響を与えました。Dataparallel -CはC*をベースとしています。