Unified Parallel C (UPC)
パラダイム 並列計算メッセージパッシング命令形手続き型言語)、構造化プログラミング
登場時期 2002年5月15日 (24年前) (2002-05-15)
設計者 UPC協会
最新リリース 2021.4.0/ 2021年4月16日 (5年前) (2021-04-16)
型付け 弱い静的型付け
主な処理系 GNU UPCIBM XL UPC CompilersHP UPCBerkeley UPCMichigan Tech MuPCCray UPC
影響を受けた言語 C言語、AC、Split-C、Parallel C Preprocessor
プラットフォーム クロスプラットフォーム
ウェブサイト upc-lang.org
テンプレートを表示

Unified Parallel CUPC は大規模な並列計算機上での高性能計算向けにC言語を拡張して作られたプログラミング言語である。これには、共有大域アドレス空間(対称型マルチプロセッシングNUMA)を伴うものと、クラスターなどの分散メモリーを伴うものが含まれる。プログラマーには共有された単一の区分化アドレス空間を割り当てられる。変数はどのプロセッサーからでも直接に読み書きできるが、いずれの変数も物理的にはどれかひとつのプロセッサーに関連づいている。UPC は SPMD モデルを使う。このモデルでは全ての並列性がプログラム実行開始時点で固定化される。大抵は一つのプロセッサーに一つのスレッドを割り当てられる。

並列性を表現するために、UPC は C99 を以下の機構について拡張してある。

  • 明示的な並列実行モデル
  • 共有アドレス空間
  • 同期の基本動作とメモリー整合モデル
  • メモリー管理の基本動作

UPC 言語は並列性の機構について C99 を拡張してつくられた先行する3つの言語(AC、Split-CParallel C Preprocessor)で得られた知見をもとに進化させた言語である。UPC 言語はこれら3つの言語の上位言語ではないが、 それぞれの優れた特徴を抽出して作られた。UPC 言語には、共有メモリーパラダイムのプログラミング上の利点や、メッセージパッシングパラダイムによるデータレイアウトの制御と性能の制御に関するプログラミング上の利点も生かされている。

関連項目

編集

外部リンク

編集

📚 Artikel Terkait di Wikipedia

C++ AMP

float(z)); } array_view<float_3, 3> srcView(depth, height, width, srcHost); array_view<float_3, 3> dstView(depth, height, width, dstHost); parallel_for_each(

MATLAB

MATLABには簡単な配列を定義する単純な構文がある。始端:増加値:終端がそれである。例えば、 array = 1:2:9 array = 1 3 5 7 9 はarrayという名の変数を定義し、これは1、3、5、7、9という数値からなる配列である。すなわち、配列は1(始端値)から始

CUDA

CUDA 7 | Parallel Forall ^ CUDA 8 PERFORMANCE OVERVIEW - November 2016, NVIDIA ^ CUDA 8.0 新機能のご紹介 - GTC Japan 2016 ^ “Support the __cuda_array_interface__

シェアソート

((isinc && (array[i] > array[i + step])) || (!isinc && (array[i] < array[i + step]))) { int temp = array[i]; array[i] = array[i + step]; array[i + step]

両端キュー

たもので、もうひとつは双方向連結リストを使った実装である。 動的配列による実装は、どちらの方向にも成長できる動的配列を使うもので、配列デック (array deque) とも呼ぶ。配列デックは動的配列でもあるため、定数時間でランダムアクセスが可能で参照の局所性もよいが、途中への挿入/削除が非効率だ

プログラミング言語一覧

CFScript(英語版) Cg Chapel CHILL CHIP-8(英語版) Clipper Clojure CLU CMS-2(英語版) Co-array Fortran COBOL CoffeeScript Common Lisp Component Pascal Concurrent Clean

FLIR

値を取り込むことから、鏡が1枚で済むようになった。このシステムを並列処理(parallel processing)型と称する。更に集積回路化が進み、赤外線センサが焦点面検知素子2次元アレイ(focal plane array, FPA)となると、装置自体の走査機構は省かれ、視野全体を瞬時に取り込めるようになっている。

引き戻し (圏論)

{\begin{array}{ccccccc}&&&&0&&0\\&&&&\downarrow &&\downarrow \\&&&&L&=&L\\&&&&\downarrow &&\downarrow \\0&\to &K&\to &P&\to &Y\\&&\parallel &&\downarrow