Work stealing とは

並列コンピューティングでは、ワークスティールはマルチスレッドコンピュータプログラムのスケジューリング戦略です。固定数のプロセッサ(またはコア)を使用して、静的マルチスレッドコンピュータ上で新しいスレッドの実行を「スポーン」する動的マルチスレッド計算を実行する問題を解決します。実行時間、メモリ使用量、プロセッサ間通信の両面で効率的です。
ワークスティールスケジューラでは、コンピュータシステムの各プロセッサは、実行すべき作業項目(計算タスク、スレッド)の待ち行列を有する。各作業項目は一連の命令で構成され、順次実行されますが、実行中に他の作業と並行して実行可能な新しい作業項目が生成されることもあります。これらの新しい項目は、最初に作業項目を実行するプロセッサの待ち行列に置かれる。プロセッサの作業がなくなると、他のプロセッサのキューを調べ、作業項目を「盗む」。事実、作業窃取は、スケジューリング作業をアイドル状態のプロセッサに分散させ、すべてのプロセッサが処理する必要がある限り、スケジューリングオーバーヘッドは発生しません。
ワークスティールは、ワークシェアリングとは対照的です。ワークシェアリングは、動的マルチスレッドの一般的な別のスケジューリング手法で、各ワークアイテムは、スポーンされたときにプロセッサにスケジュールされます。このアプローチと比較すると、すべてのプロセッサーが作業するときにこのようなマイグレーションが発生しないため、ワークスティールはプロセッサー間のプロセスマイグレーションの量を削減します。
仕事盗みの考え方は、Multilispプログラミング言語の実装に戻り、1980年代の並列関数プログラミング言語に取り組んでいます。 Cilkプログラミング言語、Java fork / joinフレームワーク、および.NET Task Parallel Library用のスケジューラで使用されています。

Parareal とは

Pararealは数値解析の並列アルゴリズムであり、初期値問題の解決に使用されます。 2001年にライオンズ、マデイ、トリニチーによって導入されました。それ以来、これは最も広く研究されているパラレル・イン・タイム統合方法の1つになっています。

Scalable Cluster Environment とは

OpenSCE(Open Scalable Cluster Environment)は、タイのKasetsart大学が率いるオープンソースのベオウルフクラスタリングソフトウェアスイートです。 SCMS(Scalable Cluster Monitoring System)と呼ばれる小規模なシステム監視から始まり、その基盤から多くのサブプロジェクトまで拡張されています。現在、OpenSCEには以下のコンポーネントがあります

Cluster manager とは

クラスタマネージャは通常、バックエンドのグラフィカルユーザーインターフェイス(GUI)またはコマンドラインソフトウェアで、1つまたはすべてのクラスタノードで実行されます(別のサーバーまたは管理サーバーのクラスタで実行されることもあります)。クラスタ管理エージェント。これらのエージェントは、クラスタの各ノードで実行され、サービス、サービスセットの管理と構成、または完全なクラスタサーバー自体の管理と構成を行います(スーパーコンピューティングを参照してください)。クラスタ(またはクラウド)を実行します。この最後のケースでは、クラスタマネージャのサブセットは、構成用ではなく、作業を送信してクラスタから作業結果を返すために使用されるリモートデスクトップアプリケーションです。他のケースでは、クラスタは、計算クラスタまたは特定のサービスクラスタより可用性とロードバランシングに関連しています。

IP Virtual Server とは

IPVS(IP Virtual Server)は、通常Linuxカーネルの一部としてレイヤ4 LANスイッチングと呼ばれるトランスポート層ロードバランシングを実装しています。
IPVSはLinux Virtual Server(LVS)に組み込まれています.LVSはホスト上で動作し、実際のサーバクラスタの前でロードバランサとして機能します。 IPVSは、TCPおよびUDPベースのサービスに対する要求を実サーバに向け、実サーバのサービスを単一のIPアドレス上に仮想サービスとして表示することができます。 IPVSはNetfilterの上に構築されています。
IPVSは、Linuxカーネルメインラインのバージョン2.4.x以降にマージされています。

HTCondor とは

HTCondorは、計算集約型タスクの粗粒度分散並列化のためのオープンソースのハイスループットコンピューティングソフトウェアフレームワークです。専用のコンピュータクラスタで作業負荷を管理したり、デスクトップコンピュータをアイドル状態にするための作業を実行したり、いわゆるサイクル清掃に使用できます。 HTCondorは、Linux、Unix、Mac OS X、FreeBSD、およびMicrosoft Windowsオペレーティングシステム上で動作します。 HTCondorは、1つのコンピューティング環境に専用リソース(ラックマウントクラスタ)と非専用デスクトップマシン(サイクル清掃)の両方を統合することができます。
HTCondorは、University of Wisconsin-MadisonのHTCondorチームによって開発され、自由に使用できます。 HTCondorはオープンソースの理念に従います(Apache License 2.0でライセンスされています)。 HTCondorのWebサイトからダウンロードするか、Fedora Linuxディストリビューションをインストールしてください。また、リポジトリのUbuntuのような他のプラットフォームでも利用できます。
HTCondorは、Globus ToolkitのコンポーネントであるGRAM(Grid Resource Allocation Manager)によってサポートされるジョブスケジューラのメカニズムの1つです。
HTCondorは未使用のコンピューティング時間を有効に活用しますが、HTCondorで使用するためにコンピュータをオンにしたままにすると、エネルギー消費と関連コストが増加します。リバプール大学は、Wake-on-LANと商用電源管理PowerMAN(ソフトウェア)を組み合わせて使用​​することで、この問題の効果的なソリューションを実証しました。バージョン7.1.1から、HTCondorは、サードパーティのソフトウェアを必要とせずに、ユーザーが指定したポリシーに基づいてマシンを休止し、スリープ解除することができます。

Relaxed sequential とは

コンピュータ科学における緩やかな連続は、並列プログラムが連続して実行される能力を記述する実行モデルです。並列プログラムが有効な順次実行を有する場合、緩やかな順次実行モデルに従うと言われる。それは効率的である必要はありません。
リラックスという言葉は、シリアルプログラムが暗黙のシリアル依存性(プログラムカウンタなど)によって実際に過度に制約され、シーケンシャルに実行する機能を削除せずにできるだけ多くの並列性を導入できるという概念を指します。このモデルはできるだけリラックスしていると考えることができ、依然として1つのスレッドで正しく動作することができます。それが目標です。
ほとんどの並列プログラムは順番に実行できますが、存在する場合は並列処理の恩恵を受けます。正しい動作のために並列処理が必要なプログラムを設計することは可能です。 2つ以上のスレッドを必要とするように実装されたプロデューサ – コンシューマのようなアルゴリズムは、並行性が適切に動作することを要求する一例です。例えば、3つのアイテムと1つのスレッドが「PUT PUT PUT PUT」を実行し、別のスレッドが「GET GET GET GET」を実行し、それぞれが一度に4つのアクションしか実行しないプログラムを持つ、有界のコンテナを考えてみます。そのようなプログラムにはインターリーブ(並行処理)が必要です。並行性を必要とするプログラムは、デバッグするのがより困難です。有効な順次実行を持つプログラムをデバッグする方が簡単です。
並行性を要求するように設計されたプログラムは、デバッグすることがより困難です。同時実行を必要とするように設計されたプログラムは、必要なスレッドの数がハードウェアスレッドの数を超えた場合、パフォーマンスの問題を抱えます。

Multistage interconnection networks とは

多段相互接続ネットワーク(MIN)は、通常、ネットワークの一方の端にある処理要素(PE)と、スイッチング要素(SE)によって接続された他方の端の記憶要素(ME)とで構成される高速コンピュータネットワークのクラスである。スイッチング素子自体は、通常、段階的に相互に接続されているため、その名前が付けられています。
MINは、通常、パケット交換ネットワークの上に実装することができますが、(従来のパケット交換ネットワークではなく)低レイテンシの相互接続として高性能または並列コンピューティングで使用されます。ネットワークは通常、ルーティング目的で使用されますが、ソートなどの目的で実際のプロセッサとのコプロセッサとして使用することもできます。サイクリックシフティングは、完璧なシャッフルネットワークのように。ビトニックソート。

Alewife (multiprocessor) とは

Alewifeは、マサチューセッツ工科大学のAnant Agarwalが率いるグループによって1990年代初頭に開発されたキャッシュコヒーレントマルチプロセッサでした。これは、最大512個の処理ノードからなるネットワークに基づいており、それぞれが高速コンテキストスイッチ用のAPRIL技術を含むようにSun Microsystems SPARC CPUを変更することによって形成されたSparcleコンピュータアーキテクチャを使用していました。
Alewifeプロジェクトは、普及しているBeowulfクラスタマルチプロセッサの作成者によって引用された2つの前任者の1つでした。

List ranking とは

並列アルゴリズムでは、リストランキングの問題は、リンクされたリスト内の各アイテムの位置またはランクを決定することを含む。つまり、リストの最初の項目には番号1を割り当て、リストの2番目の項目には番号2などを割り当てる必要があります。シーケンシャルコンピュータでこの問題を効率的に解決するのは簡単ですが、並行して解決することはより複雑です。 Anderson&Miller(1990)が書いたように、この問題は並列アルゴリズムコミュニティでは多くのアプリケーションで重要であると考えられていたため、並列アルゴリズムでより一般的に適用できる多くの重要なアイデアが得られました。