出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/04/08 01:07 UTC 版)
|
|
この記事の出典や参考文献は、一次資料や記事主題の関係者による情報源に頼っています。
|
| パラダイム | 並列計算、メッセージパッシング、命令形(手続き型言語)、構造化プログラミング |
|---|---|
| 登場時期 | 2002年5月15日 |
| 設計者 | UPC協会 |
| 最新リリース | 2021.4.0/ 2021年4月16日 |
| 型付け | 弱い静的型付け |
| 主な処理系 | GNU UPC、IBM XL UPC Compilers、HP UPC、Berkeley UPC、Michigan Tech MuPC、Cray UPC |
| 影響を受けた言語 | C言語、AC、Split-C、Parallel C Preprocessor |
| プラットフォーム | クロスプラットフォーム |
| ウェブサイト | upc-lang |
Unified Parallel C、UPC は大規模な並列計算機上での高性能計算向けにC言語を拡張して作られたプログラミング言語である。これには、共有大域アドレス空間(対称型マルチプロセッシング、NUMA)を伴うものと、クラスターなどの分散メモリーを伴うものが含まれる。プログラマーには共有された単一の区分化アドレス空間を割り当てられる。変数はどのプロセッサーからでも直接に読み書きできるが、いずれの変数も物理的にはどれかひとつのプロセッサーに関連づいている。UPC は SPMD モデルを使う。このモデルでは全ての並列性がプログラム実行開始時点で固定化される。大抵は一つのプロセッサーに一つのスレッドを割り当てられる。
並列性を表現するために、UPC は C99 を以下の機構について拡張してある。
UPC 言語は並列性の機構について C99 を拡張してつくられた先行する3つの言語(AC、Split-C、Parallel C Preprocessor)で得られた知見をもとに進化させた言語である。UPC 言語はこれら3つの言語の上位言語ではないが、 それぞれの優れた特徴を抽出して作られた。UPC 言語には、共有メモリーパラダイムのプログラミング上の利点や、メッセージパッシングパラダイムによるデータレイアウトの制御と性能の制御に関するプログラミング上の利点も生かされている。
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/05/04 02:05 UTC 版)
「C言語」の記事における「Unified Parallel C」の解説
※この「Unified Parallel C」の解説は、「C言語」の解説の一部です。
「Unified Parallel C」を含む「C言語」の記事については、「C言語」の概要を参照ください。