JP2019057303A - 計算タスクを処理するためのコンピュータクラスタ構成、およびそれを動作させるための方法 - Google Patents

計算タスクを処理するためのコンピュータクラスタ構成、およびそれを動作させるための方法 Download PDF

Info

Publication number
JP2019057303A
JP2019057303A JP2018208953A JP2018208953A JP2019057303A JP 2019057303 A JP2019057303 A JP 2019057303A JP 2018208953 A JP2018208953 A JP 2018208953A JP 2018208953 A JP2018208953 A JP 2018208953A JP 2019057303 A JP2019057303 A JP 2019057303A
Authority
JP
Japan
Prior art keywords
booster
computer cluster
cluster configuration
task
group
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018208953A
Other languages
English (en)
Other versions
JP6653366B2 (ja
Inventor
リッペルト,トーマス
Lippert Thomas
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Partec Cluster Competence Center GmbH
Original Assignee
Partec Cluster Competence Center GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=43831684&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2019057303(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Partec Cluster Competence Center GmbH filed Critical Partec Cluster Competence Center GmbH
Publication of JP2019057303A publication Critical patent/JP2019057303A/ja
Application granted granted Critical
Publication of JP6653366B2 publication Critical patent/JP6653366B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload

Abstract

【課題】計算ノードへアクセラレータを動的に割当てる高性能クラスタ技術を提供する。【解決手段】コンピュータクラスタ構成、およびコンピュータクラスタ構成を動作させるための方法であって、クラスタCとブースタ群BGとを含むコンピュータクラスタ構成は、計算ノードCNを含み、それらは特定の計算タスクをブースタBに動的にアウトソーシングする。計算ノードCNへのブースタBの割当は、実行時に動的に行なわれる。【選択図】図2

Description

この発明は、コンピュータクラスタ構成に向けられている。特にそれは、拡張可能な計算タスクおよび複雑な計算タスクを処理するための計算ノードの適用について、リソース管理が改良されたコンピュータクラスタ構成に関する。それは特に、計算タスクを処理するためのコンピュータクラスタ構成、およびコンピュータクラスタ構成を動作させるための方法に向けられている。この発明に従ったコンピュータクラスタ構成は加速機能性を用いており、それは計算ノードが所与の計算タスクを達成することを支援する。この発明はさらに、方法を達成するために構成されたコンピュータプログラム製品、およびコンピュータプログラム製品を格納するためのコンピュータ読取可能媒体に向けられている。
高リソース要件の計算をアウトソーシングするために計算ノードに密接に結合された少なくとも1つのプロセッサおよびアクセラレータを含む計算ノードを備えるコンピュータクラスタ構成が、当該技術分野で公知である。計算ノードにアクセラレータを密接に結合することは、静的割当をもたらし、アクセラレータのサブスクリプションの過剰または不足につながる。これは、リソースの欠如につながる場合があり、またはリソースの過剰供給につながる場合がある。計算ノードへのアクセラレータのそのような静的割当はまた、アクセラレータが故障した場合に耐故障性を提供しない。
ホセ デュアト(Jose Duato)、ラファエル メイヨー(Rafael Mayo)らによる「rCUDA:高性能クラスタにおけるGPUベースのアクセラレータの個数の削減」(rCUDA: reducing the number of GPU-based accelerators in high performance clusters)という
出版物(高性能コンピューティングおよびシミュレーション(High Performance Computing and Simulation:HPCS)についての国際会議、発行日:2010年6月28日〜
2010年7月2日、第224〜231頁)は、高性能クラスタにおける遠隔GPU加速を可能にし、このためクラスタに設置されるアクセラレータの個数の減少を可能にする、フレームワークについて記載している。これは、エネルギ、取得、保守、およびスペースの節約につながり得る。
エルサレム(Jerusalem)のヘブライ大学(Hebrew University)コンピュータサイエンス学部のアムノン バラク(Amnon Barak)らによる「多数のGPU装置を有するクラス
タ上でのOpenCLベースの異種計算用パッケージ」(A package for open CL based heterogeneous computing on clusters with many GPU devices)という出版物は、多数
のGPU装置を有するクラスタ上でOpenMP、C++、未修正OpenCLアプリケーションを実行するためのパッケージについて記載している。また、1つのホスティングノード上のアプリケーションがクラスタ幅の装置を透過的に利用することを可能にする、OpenCL仕様の実現およびOpenMP APIの拡張が提供される。
図1は、従来技術に従ったコンピュータクラスタ構成を示す。このコンピュータクラスタ構成はいくつかの計算ノードCNを含み、それらは相互接続されて計算タスクを共同で計算する。各計算ノードCNは、アクセラレータAccと密接に結合されている。図1から明らかなように、計算ノードCNは、マイクロプロセッサ、たとえば中央処理装置CPUとともに計算ノードCN上に事実上一体化されたアクセラレータユニットACCを含む。上述のように、計算ノードCNへのアクセラレータAccの固定結合は、計算タスクに
依存して、アクセラレータAccのサブスクリプションの過剰または不足につながる。また、アクセラレータAccのうちの1つが故障した場合に、耐故障性が提供されない。図1に従った公知のコンピュータクラスタ構成では、計算ノードCNはインフラストラクチャを通して互いに通信し、アクセラレータAccは情報を直接交換しないが、データ交換のために計算ノードCNがインフラストラクチャINとインターフェイス接続することを必要とする。
このため、本発明の目的は、アクセラレータと計算ノードとの間のデータ交換に関する通信の柔軟性と、アクセラレータのうちのいずれかおよび各々への計算ノードの直接アクセスとを可能にするコンピュータクラスタ構成を提供することである。また、この発明の目的は、実行時に計算ノードへのアクセラレータの動的結合を提供することである。
これらの目的は、特許請求項1に従った特徴を有するコンピュータクラスタ構成によって解決される。
したがって、計算タスクを処理するためのコンピュータクラスタ構成が提供され、このコンピュータクラスタ構成は、
複数の計算ノードを含み、それらの各々は通信インフラストラクチャとインターフェイス接続し、それらの少なくとも2つは、計算タスクの少なくとも第1の部分を共同で計算するよう構成されており、コンピュータクラスタ構成はさらに、
計算タスクの少なくとも第2の部分を計算するよう構成された少なくとも1つのブースタを含み、各ブースタは通信インフラストラクチャとインターフェイス接続しており、コンピュータクラスタ構成はさらに、
計算タスクの第2の部分の計算のために、少なくとも1つのブースタを複数の計算ノードのうちの少なくとも1つに割当てるよう構成されたリソースマネージャを含み、割当は、予め定められた割当メトリックの関数として達成される。
このコンピュータクラスタ構成では、個々のブースタによって加速機能性が提供されている。上述のコンピュータクラスタ構成は、算出ノードとも呼ばれ得る計算ノードへのそれらのブースタの緩い結合を可能にする。このため、計算ノードによる、ここではブースタの形をしたアクセラレータの共有が実現可能である。計算ノードへのブースタの割当のために、リソースマネージャモジュールまたはリソースマネージャノードの形をしたリソースマネージャが提供されてもよい。リソースマネージャは、計算タスクの処理の開始時に静的割当を確立してもよい。これに代えて、またはこれに加えて、それは、実行時、すなわち計算タスクの処理中に、動的割当を確立してもよい。
リソースマネージャは、少なくとも1つの計算ノードから少なくとも1つのブースタに計算タスクの一部をアウトソーシングするために、割当情報を計算ノードに提供するよう構成されている。リソースマネージャは、特定のハードウェアユニット、仮想ユニットとして実現されてもよく、またはそれらのうちのいずれかの複合物であってもよい。特に、リソースマネージャは、マイクロプロセッサ、ハードウェアコンポーネント、仮想化ハードウェアコンポーネント、またはデーモンのいずれか1つによって形成されてもよい。また、リソースマネージャの一部がシステムを通して分布され、通信インフラストラクチャを介して通信してもよい。
ブースタ間の通信は、ネットワークプロトコルを通して達成される。このため、ブースタ割当は、アプリケーションニーズの関数として、すなわちある特定の計算タスクの処理に依存して行なわれる。ブースタが故障した場合の耐故障性が提供され、また拡張性が培われる。拡張性は漸進的システム開発のサポートによって可能となる。なぜなら、ブース
タが計算ノードとは独立して提供されているためである。このため、計算ノードの数と提供されたブースタの数とは異なっていてもよい。これにより、ハードウェアリソースを提供する上で最大の柔軟性が確立される。また、すべての計算ノードは同じ成長能力を共有する。
計算タスクは、アルゴリズム、ソースコード、バイナリコードによって定義されてもよく、また、それらのうちのいずれかの複合物であってもよい。計算タスクはたとえばシミュレーションであってもよく、それはコンピュータクラスタ構成によって計算されるべきものである。また、計算タスクは、サブタスクとも呼ばれるサブ問題をいくつか含んでいてもよく、それらは全体で計算タスク全体を表わしている。計算タスクをいくつかの部分に、たとえば計算タスクの少なくとも第1の部分および計算タスクの少なくとも第2の部分に分割することが可能である。また、コンピュータクラスタ構成は、計算タスクの部分同士を並行してまたは連続して解くことも可能である。
各計算ノードは、相互接続子とも呼ばれる通信インフラストラクチャとインターフェイス接続している。同様に、各ブースタは通信インフラストラクチャとインターフェイス接続している。このため、計算ノードおよびブースタは、通信インフラストラクチャによって相互作用する。したがって、各計算ノードは、ある計算ノードからあるブースタへとデータを交換する間、さらに別の通信ノードを伴う必要なく、通信インフラストラクチャを通して各ブースタと通信する。これにより、ブースタへの計算ノードの動的割当が確立され、計算ノードは計算タスクの少なくとも一部を処理し、また、計算ノードは1つの計算ノードから1つのブースタへの情報の通過のために必要とはされない。したがって、従来技術で通常実現されているような中間計算ノードを必要とすることなく、ブースタを通信インフラストラクチャに直接結合することが可能である。
ブースタと計算ノードとの間の割当を達成するために、ある特定の1組の規則が必要とされる。したがって、割当メトリックが提供され、それはどのブースタをどの計算ノードと結合するか決めるための基準として機能する。割当メトリックはリソースマネージャによって管理されてもよい。割当メトリックを管理するということは、少なくとも1つのさらに指定される計算ノードに割当てられる少なくとも1つのブースタを指定する規則を確立し、更新することを指す。このため、実行時に割当メトリックを更新することが可能である。そのような割当規則は、コンピュータクラスタ構成の、特にブースタの作業負荷を検出する負荷バランシングの関数として作り出されてもよい。また、ブースタの計算能力を検出し、さらに計算タスク要件を検出して、選択されたブースタを割当てることが可能であり、それは要求される能力を計算ノードに提供する。計算ノードへのブースタの初期割当を決定するために、割当メトリックは予め定められているが、実行時に変更されてもよい。このため、計算タスクの処理の開始時には静的割当が提供され、実行時には動的割当が提供される。
この発明の一実施例では、定められた割当メトリックは、メトリック特定技術の群のうちの少なくとも1つに従って形成され、群は、時相論理、割当マトリックス、割当テーブル、確率関数、および費用関数を含む。このため、ブースタを割当てるために、時間依存性を考慮してもよい。ブースタに対して時間的順序が定義され、それは、ある特定のブースタが、さらに別のブースタが計算タスクの少なくとも一部を解くことができない場合に、常にある計算ノードに割当てられることを確実にする、という場合があり得る。このため、ブースタ間の階層を、それらの割当のために考慮してもよい。割当メトリックは計算ノードの識別を指定してもよく、また、割当可能な互換性のあるブースタの識別を定義してもよい。確立関数は、たとえば、ある特定のブースタがある計算タスクを計算できなかった場合、さらに別のブースタがある特定の確率で同じ計算タスクを解くかもしれない、ということを表わしてもよい。また、費用関数は、要求されるリソース能力の評価のため
に、さらにブースタの提供される計算能力の評価のために適用されてもよい。こうして、ある要件の計算タスクが適切なブースタに転送可能となる。
計算ログ記録とも呼ばれる計算履歴も、動的割当のために適用されてもよい。このため、計算タスクは、少なくとも1つの第1のブースタにおいて計算し、応答時間を記録し、さらに少なくとも1つのさらに別のブースタにおいて同じ計算タスクを処理し、応答時間を記録することによって、実験的に評価可能である。このため、ブースタの能力は記録され、実験的に評価され、それにより、要求される能力およびそれらの提供される能力の関数として計算ノードに割当てられ得る。特定の計算タスクは優先度情報を含んでいてもよく、それは、この特定の計算タスクをどのくらい至急に計算しなければならないかを示す。また、特定の計算ノードが優先度を提供する場合もあってもよく、それは、ある計算タスクの、またはある計算タスクの少なくとも一部の処理が、他の計算ノードから生じている計算タスクの他の部分と比べてどのくらい至急かを示す。このため、計算タスクの単独の部分に関する優先度情報、および計算ノードを参照する優先度情報を提供することが可能である。
あるブースタがある計算ノードに一旦割当てられると、そのブースタはある計算タスクの特定の部分を処理する。これは、遠隔手続呼出、パラメータ引渡し、またはデータ伝送によって達成されてもよい。計算タスクの部分の複雑性は、パラメータ引渡しの関数として評価されてもよい。パラメータがマトリックスを含む場合、パラメータ引渡しの複雑性は、マトリックスの次元数によって評価可能である。
通信インフラストラクチャをインターフェイス接続するために、インターフェーシングユニットが提供されてもよく、それは1つの計算ノードと通信インフラストラクチャとの間に配置される。第1のインターフェーシングユニットとは異なるさらに別のインターフェーシングユニットが、ブースタと通信インフラストラクチャとの間に配置されてもよい。インターフェーシングユニットは計算ノードと異なっていてもよく、ブースタとも異なっている。インターフェーシングユニットはネットワーク機能性を提供するに過ぎず、計算タスクの一部を処理するよう構成されてはいない。インターフェーシングユニットは、計算タスクの管理および通信問題に関する機能性を提供するに過ぎない。それはたとえば、計算タスクを参照するデータのルーティングおよび伝送に関する機能性を提供するかもしれない。
また、加速は、少なくとも1つのブースタから少なくとも1つの計算ノードに計算タスクの少なくとも一部をアウトソーシングすることによって、逆に行なわれてもよい。このため、この発明の上述の局面に関し、制御および情報フローが逆にされる。
この発明の一局面によれば、予め定められた割当は、マトリックス特定技術の少なくとも1つの群に従って形成され、群は、時相論理、割当マトリックス、割当テーブル、確率関数、および費用関数を含む。これは、予め定められた割当メトリックが、形式的もしくは半形式的なモデルまたはデータタイプを用いて形成されてもよいという利点を提供し得る。
この発明のさらに別の局面によれば、予め定められた割当メトリックは、割当パラメータの群のうちの少なくとも1つの関数として特定され、群は、リソース情報、費用情報、複雑性情報、拡張性情報、計算ログ記録、コンパイラ情報、優先度情報、およびタイムスタンプを含む。これは、実行時、異なる実行時パラメータを考慮して、かつ特定の計算タスク特性に応答して、割当が動的に行なわれ得るという利点を提供し得る。
この発明のさらに別の局面によれば、複数の計算ノードのうちの1つへの少なくとも1
つのブースタの割当は、信号の群のうちの少なくとも1つをトリガし、群は、遠隔手続呼出、パラメータ引渡し、およびデータ伝送を含む。これは、計算タスクの少なくとも一部が1つの計算ノードから少なくとも1つのブースタに転送され得るという利点を提供し得る。
この発明のさらに別の局面によれば、各計算ノードおよび各ブースタはそれぞれ、インターフェーシングユニットを介して、通信インフラストラクチャとインターフェイス接続している。これは、中間計算ノードを必要とすることなく、データが通信インフラストラクチャを介して通信可能であるという利点を提供し得る。このため、ブースタを計算ノードと直接結合する必要はないものの、動的割当が達成される。
この発明のさらに別の局面によれば、インターフェーシングユニットは、構成要素の少なくとも1つの群を含み、群は、仮想インターフェイス、スタブ、ソケット、ネットワークコントローラ、およびネットワーク装置を含む。これは、計算ノードだけでなくブースタも通信およびインフラストラクチャに事実上接続可能であるという利点を提供し得る。また、既存の通信インフラストラクチャが容易にアクセスされ得る。
この発明のさらに別の局面によれば、通信およびインフラストラクチャは、構成要素の群のうちの少なくとも1つを含み、群は、バス、通信リンク、切替ユニット、ルータ、および高速ネットワークを含む。これは、既存の通信インフラストラクチャが使用可能であり、新しい通信インフラストラクチャが一般に利用可能なネットワーク装置によって作られ得るという利点を提供し得る。
この発明のさらに別の局面によれば、各計算ノードは、構成要素の群のうちの少なくとも1つを含み、群は、マルチコアプロセッサ、クラスタ、コンピュータ、ワークステーション、および汎用プロセッサを含む。これは、計算ノードが高度に拡張可能であるという利点を提供し得る。
この発明のさらに別の局面によれば、少なくとも1つのブースタは、構成要素の群のうちの少なくとも1つを含み、群は、メニーコアプロセッサ、スカラープロセッサ、コプロセッサ、図形処理ユニット、メニーコアプロセッサのクラスタ、およびモノリシックプロセッサを含む。これは、ブースタが高速で特定の問題を処理するよう実現されるという利点を提供し得る。
いくつかの計算タスクが同時に処理される必要があるため、計算ノードは通常、広範囲の制御ユニットを含むプロセッサを適用する。ブースタに適用されているプロセッサは通常、計算ノードのプロセッサと比べると、広範囲の算術論理演算ユニットと単純な制御構造とを備える。たとえば、単一命令複数データコンピュータとも呼ばれるSIMDが、ブースタに適用されてもよい。このため、計算ノードに適用されているプロセッサは、ブースタに適用されているプロセッサと比べると、それらのプロセッサ設計が異なっている。
この発明のさらに別の局面によれば、リソースマネージャは、計算タスクの少なくとも一部の計算中、前記予め定められた割当メトリックを更新するよう構成されている。これは、計算ノードへのブースタの割当が実行時に動的に行なわれ得るという利点を提供し得る。
目的はまた、特許請求項11の特徴に従った、コンピュータクラスタ構成を動作させるための方法によっても解決される。
したがって、計算タスクを処理するために、コンピュータクラスタ構成を動作させるた
めの方法が提供され、この方法は、
複数の計算ノードのうちの少なくとも2つによって、計算タスクの少なくとも第1の部分を計算するステップを含み、各計算ノードは通信インフラストラクチャとインターフェイス接続しており、当該方法はさらに、
少なくとも1つのブースタによって、計算タスクの少なくとも第2の部分を計算するステップを含み、各ブースタは通信インフラストラクチャとインターフェイス接続しており、当該方法はさらに、
計算タスクの第2の部分の計算のために、リソースマネージャによって、少なくとも1つのブースタを複数の計算ノードのうちの1つに割当てるステップを含み、前記割当は、予め定められた割当メトリックの関数として達成される。
また、紹介された方法を達成するために構成された、コンピュータプログラム、およびコンピュータプログラム製品を格納するための、コンピュータ読取可能媒体が提供される。
ここで、この発明を、添付図面を参照して単なる例示として説明する。
従来技術に従ったコンピュータクラスタ構成を示す図である。 この発明の一局面に従ったコンピュータクラスタ構成の概略図である。 この発明のさらに別の一局面に従ったコンピュータクラスタ構成の概略図である。 この発明の一局面に従ったコンピュータクラスタ構成を動作させるための方法の概略図である。 この発明のさらに別の一局面に従ったコンピュータクラスタ構成を動作させるための方法の概略図である。 この発明のさらに別の一局面に従ったコンピュータクラスタ構成の制御フローの概略図である。 この発明のさらに別の一局面に従ったコンピュータクラスタ構成の逆加速を実現する制御フローの概略図である。 この発明のさらに別の一局面に従ったコンピュータクラスタ構成の制御フローの概略図である。 この発明の一局面に従ったコンピュータクラスタ構成のネットワークトポロジーの概略図である。
以下において、別段の指示がない限り、同じ概念のものを同じ参照符号で示す。
図2は、クラスタCとブースタ群BGとを含むコンピュータクラスタ構成を示す。本実施例では、クラスタは、CNとも呼ばれる計算ノードを4つと、Bとも呼ばれるブースタを3つ含んでいる。計算ノードへのブースタの柔軟な結合は、いわゆる相互接続子といった通信インフラストラクチャINによって確立されている。この種の通信インフラストラクチャINは、たとえば、インフィニバンド(登録商標)を使用することによって実現可能である。このため、各ブースタBは、計算ノードCNのいずれによっても共有可能である。また、クラスタレベルに対する仮想化が達成可能である。各ブースタ、またはブースタのうちの少なくとも一部が仮想化され、計算ノードにとって事実上利用可能になり得る。
本実施例では、計算タスクは計算ノードCNのうちの少なくとも1つによって処理され、計算タスクのうちの少なくとも一部は、ブースタBのうちの少なくとも1つに転送されてもよい。ブースタBは、特定の問題を計算し、特定の処理能力を提供するよう構成され
ている。このため、計算ノードCNのうちの1つからブースタBに問題をアウトソーシングし、ブースタによって計算することが可能であり、結果が計算ノードに送り返されてもよい。計算ノードCNへのブースタESBの割当は、RMとも呼ばれるリソースマネージャによって達成可能である。リソースマネージャは第1の割当を初期化し、これより先、計算ノードCNへのブースタBの動的割当を確立する。
ブースタと計算ノードとの間の通信のために、APIとも呼ばれるアプリケーションプログラミングインターフェイスが提供可能である。ブースタBは、それぞれのAPI関数呼出を通して、計算ノードによって透過的に制御されてもよい。APIは、ブースタの実際の固有プログラミングモデルを抽出し、強化する。また、APIは、ブースタが故障した場合の耐故障性のための手段を提供してもよい。API呼出に関与する通信プロトコルが、通信層の上に積層されてもよい。この発明の一局面に従った1組のAPI呼出の短い説明を以下に提供する。ここで、「アクセラレータ」というパラメータは、アドレス指定されるブースタを特定してもよい:
・aanInit (accelerator)
使用前にブースタを初期化する
・aanFinalize (accelerator)
使用後にブースタについての経理情報を解除する
・aanMemAlloc (address、size、accelerator)
参照されたブースタ上のメモリのサイズバイトを割当てる
割当てられた装置メモリのアドレスを戻す
・aanMemFree (address、accelerator)
参照されたブースタ上のアドレスで始まるメモリを解除する
・aanMemCpy (dst、src、size、direction、accelerator)
srcからdstメモリアドレスにサイズバイトをコピーする
コピー動作の方向は、
(i) ブースタからホスト、
(ii) ホストからブースタ
であってもよい
・aanKernelCreate (file_name、funct_name、kernel、accelerator)
参照されたブースタ上での実行のために、ファイルの名前(file_name)および関数の
名前(funct_name)によって定義されたカーネルを作成する
ハンドルをカーネルに戻す
・aanKernelSetArg (kernel、index、size、align、value)
カーネル実行のための引数を、引数リストにおけるその指標、サイズ、整列要件(align)、および値によって定義する
・aanKernelRun (kernel、grid_dim、block_dim)
acKernelCreate()への前回の呼出におけるカーネルに関連付けられたブースタ上でカーネル実行を開始する。スレッドの数は、ブロック毎のスレッドの数(block_dim)および
グリットにおけるブロックの数(grid_dim)によって決定される
・aanKernelFree (kernel)
カーネルに関連付けられたリソースを解除する
図3は、この発明の一局面に従ったさらに別のクラスタ構成を示す。図示されたコンピュータクラスタ構成は、特に高性能クラスタ技術のコンテキストにおいて、科学的計算タスクを計算するよう構成されている。科学的高性能クラスタアプリケーションコードのポートフォリオの特性のより綿密な分析により、エクサスケールの必要性を有する多くのコードが、一方では、エクサスケーリングによく適したコードブロックを含み、他方では、複雑過ぎてあまり拡張可能ではないそのようなコードブロックを含む、ということがわかっている。以下に、コードブロックのレベルにおいて、高度に拡張可能であることと複雑であることとを区別して、エクサスケールコードブロック(Exascale Code Blocks:EC
B)および複雑コードブロック(Complex Code Blocks:CCB)の概念を紹介する。
明らかに、純粋に高度に拡張可能なコードはなく、厳密に複雑なコードもない。各コードは、高度に拡張可能な複雑な要素と、それほど拡張可能ではない複雑な要素とを有する。実際、両極端の間には連続体がある。興味深いことに、コードのそれほど拡張可能ではない多くの要素は、高度の拡張性を必要とせず、代わりに大きいローカルメモリを必要とする。また、すべての通信要素はより小さい並列処理下で高い利点を有することも明らかである。
メモリの相対量(すなわちメモリの相対量の取扱われる自由度、すなわちECB対CCBの取扱われる自由度)、実行時間、および交換されるべきデータの点で、ECBとCCBとの間の適切なバランスが与えられる、そのような問題について、それはそれ自体を特定のアーキテクチャ的解決策によってこの状況に適合させることを提案する。伝統的なクラスタコンピュータからなるこの解決策は、密接に接続されたブースタを有し、かつクラスタのネットワークを通してクラスタと接続されているエクサスケールブースタとともに、アプローチを行なう。この二元的アプローチは、純粋なエクサスケールシステムの予測される狭い応用分野を実質的に広げる可能性を有する。
アプリケーションコードの高度に拡張可能な部分またはECBは、動的にアクセスされる並列メニーコアアーキテクチャ上で実行され、一方、CCBは、洗練された動的リソース割当システムとともに接続性を含む好適な次元の伝統的なクラスタシステム上で実行される、粗いアーキテクチャモデルが出現する。
エクサスケールでのクラスタは、回復力および信頼性を保証するために、仮想化要素を必要とする。ローカルアクセラレータは原則として、システム全体に対する単純な見方を可能にし、特に極めて高いローカル帯域幅を利用できる一方、それらは絶対的に静的なハードウェア要素であり、ファーミングまたはマスタ−スレーブ並列化によく適している。このため、それらを仮想化ソフトウェア層に含めることは困難であろう。加えて、アクセラレータが故障した場合、耐故障性がなく、サブスクリプションの過剰または不足に対する耐性がないであろう。
クラスタの計算ノードCNは、標準的なクラスタ相互接続子、たとえばメラノックス・インフィニバンド(Mellanox InfiniBand)によって内部結合される。このネットワーク
は、ブースタ(ESB)も含むよう拡張される。図面には、そのようなブースタが3つ図示されている。ESBは各々、特定の高速低遅延ネットワークによって接続された複数のメニーコアアクセラレータからなる。
ESBとのCNのこの接続は、非常に柔軟である。計算ノード間でのアクセラレータ能力の共有が可能になる。クラスタレベルでの仮想化はモデルによって妨げられず、完全なESB並列処理が利用可能である。ESBのCNへの割当は、動的なリソースマネージャRMを介して進行する。開始時の静的割当は、実行時に動的になり得る。すべてのCN−ESB通信は、クラスタネットワークプロトコルを介して進行する。AC内通信は新しい解決策を必要とするであろう。ESB割当はアプリケーションニーズに従うことができ、アクセラレータが故障した場合、耐故障性が保証され、一方、すべての計算ノードは同じ成長能力を共有する。
ブースタの算出要素として、インテルのメニーコアプロセッサであるナイツコーナ(Knight's Corner:KC)が適用されてもよい。KCチップは50を超えるコアからなり、
チップ毎に1テラフロップ/sを超えるDP算出能力を提供するよう期待されている。要素が1万個の場合、10ペタフロップ/sという全体性能が到達されるであろう。KCの
前身であるナイツフェリープロセッサ(Knight's Ferry processor:KF)は、クラスタ−ブースタ(CN−ESP)概念を研究するためにPCIeベースのパイロットシステムを作成するためにプロジェクトで使用されるであろう。
KFの算出速度は現在の商品プロセッサを約10倍上回っているため、ESB内通信システムをそれに応じて次元化する必要がある。ESBの通信システムは、カード当たり少なくとも1テラビット/s(二重)を要する。通信システムEXTOLLが、バスシステムの実現化例として使用されてもよく、それはカード当たり1.44テラビット/sの通信速度を提供する。それは、カード当たり6つのリンクを提供する3dトポロジーを実現する。その単純さに関し、このトポロジーは、メニーコアアクセラレータに基づくブースタに適用可能であるようである。カットスルー・ルーティング用に2つの方向が確保されていても、EXTOLLは、データレートに関する限り、PCIエクスプレスの性能を満たすことができる。遅延性は、ASIC実現化例に基づく場合、0.3μsに達し得る。現在、EXTOLLはFPGAによって実現される。
図4は、この発明に従ったコンピュータクラスタ構成を動作させるための方法の一局面を示すためのフロー図を示す。第1のステップ100で、複数の計算ノードCNのうちの少なくとも2つによって、計算タスクの少なくとも第1の部分が計算され、各計算ノードCNは通信インフラストラクチャINとインターフェイス接続している。また、ステップ101における、少なくとも1つのブースタBによる、計算タスクの少なくとも第2の部分の計算が実行され、各ブースタBは通信インフラストラクチャINとインターフェイス接続している。また、ステップ102における、計算タスクの第2の部分の計算のための、リソースマネージャRMによる、複数の計算ノードCNのうちの1つへの少なくとも1つのブースタBの割当が行なわれる。図4の右の矢印が示すように、制御フローはステップ100に戻ってもよい。ステップ102で少なくとも1つのブースタBを複数の計算ノードCNのうちの少なくとも1つに割当てた後で、割当を計算ノードCNに通信することが可能であり、それは伝送された割当をさらに別のアウトソーシングステップで使用する。このため、ステップ101において、計算タスクの少なくとも第2の部分の計算は、割当ステップ102の関数として行なわれる。
図5は、この発明の一局面に従ったコンピュータクラスタ構成を動作させるための方法を示すフロー図を示す。本実施例では、ステップ202における、複数の計算ノードCNのうちの1つへの少なくとも1つのブースタBの割当の後で、計算タスクの少なくとも第2の部分を計算するステップ201が行なわれる。このため、特定のブースタBを選択することが可能であり、ステップ202で確立された割当に基づいて、ブースタBは、計算タスクの少なくとも第2の部分を計算する。これは、計算タスクの少なくとも第2の部分がリソースマネージャRMに転送され、それがブースタBを計算タスクの第2の部分に割当てる場合に、利点となり得る。リソースマネージャRMは次に、計算ノードCNがブースタBに直接接触する必要なく、計算タスクの第2の部分をブースタBに伝送することができる。
図4および図5を参照して、当業者であれば、いずれのステップも繰返し、異なる順序で行なわれてもよく、さらに別のサブステップを含んでいてもよい、ということを理解するであろう。たとえば、ステップ101の前にステップ102を行なってもよく、それは、計算タスクの第1の部分の計算、1つの計算ノードへの1つのブースタの割当、そして最後に計算タスクの第2の部分の計算をもたらす。ステップ102は、計算タスクの計算された少なくとも第2の部分を計算ノードCNに戻すといったサブステップを含んでいてもよい。こうして、ブースタBは、計算結果を計算ノードCNに戻す。計算ノードCNは、戻された値をさらに別の計算タスクの計算に用いてもよく、計算タスクの少なくともさらに別の部分をブースタBのうちの少なくとも1つに再度転送してもよい。
図6は、この発明の一局面に従ったコンピュータクラスタ構成の制御フローのブロック図である。本実施例では、計算ノードCNは計算タスクを受取り、ブースタBに、受取った計算タスクの少なくとも一部をアウトソーシングするよう要求する。したがって、リソースマネージャRMがアクセスされ、それは計算タスクの一部を選択されたブースタBに転送する。ブースタBは計算タスクの一部を計算して結果を戻し、それは最も右の矢印によって示されている。本実施例のさらに別の局面によれば、戻された値は計算ノードCNに返され得る。
図7は、この発明の一局面に従ったコンピュータクラスタ構成の逆加速を実現する制御フローのブロック図を示す。本実施例では、少なくとも1つの計算ノードCNを少なくとも1つのブースタBに割当てることによって、少なくとも1つのブースタBが計算している計算タスクの計算の加速が行なわれる。このため、制御および情報フローは、図6に示す実施例に関し、逆になっている。タスクの計算はしたがって、ブースタBから少なくとも1つの計算ノードCNに計算タスクをアウトソーシングすることによって加速され得る。
図8は、この発明のさらに別の局面に従ったコンピュータクラスタ構成の制御フローのブロック図を示す。本実施例では、リソースマネージャRMは計算タスクの少なくとも一部をブースタBに渡しておらず、計算ノードCNは、計算タスクの特定の少なくとも一部を計算するよう構成されているブースタBのアドレスまたはさらに別の識別を要求する。リソースマネージャRMは、要求されたアドレスを計算ノードCNに戻す。計算ノードCNはここで、通信インフラストラクチャINによってブースタBに直接アクセスできる。本実施例では、通信インフラストラクチャINは、インターフェーシングユニットを介してアクセスされる。計算ノードCNはインターフェーシングユニットIU1によって通信インフラストラクチャINにアクセスし、ブースタBはインターフェーシングユニットIU2によって通信インフラストラクチャINとインターフェイス接続する。
さらに、リソースマネージャRMはブースタBのリソース能力を評価するよう構成されており、割当、すなわち、各ブースタBの評価されたリソース能力の関数としての、ブースタBの選択を実行する。そうするために、リソースマネージャRMは割当メトリックにアクセスしてもよく、それはデータベースDBまたは任意の種類のデータソースに格納されていてもよい。リソースマネージャRMは割当メトリックを更新するよう構成されており、それはデータベース管理システムを使用して行なわれ得る。データベースDBは、任意の種類のストレージとして実現可能である。それは、たとえば、テーブル、レジスタ、またはキャッシュとして実現されてもよい。
図9は、この発明の一局面に従ったコンピュータクラスタ構成のネットワークトポロジーの概略図を示す。
一実施例では、計算ノードは、共通の第1の通信インフラストラクチャ、たとえば、中央の切替ユニットSを有するスタートポロジーを共有している。さらに別の第2の通信インフラストラクチャが、計算ノードCNのブースタノードBNとの通信のために提供されている。第3の通信インフラストラクチャが、ブースタノードBN間の通信のために提供されている。このため、ブースタノードBN間の通信用の高速ネットワークインターフェイスが、特定のBN−BN通信インターフェイスを用いて提供可能である。BN−BN通信インフラストラクチャは、3dトポロジーとして実現可能である。
さらに別の一実施例では、2つの通信インフラストラクチャが提供され、一方は計算ノードCN間の通信用に、一方のさらに別の通信インフラストラクチャはブースタノードB
N間の通信用に提供される。双方の通信インフラストラクチャは、少なくとも1つの通信リンクによって、第1のネットワークから第2のネットワークへと、または第2のネットワークから第1のネットワークへと結合可能である。このため、選択された1つの計算ノードCNまたは選択された1つのブースタノードBNがそれぞれ他のネットワークと接続される。この図9では、切替ユニットSを使用して、1つのブースタノードBNが計算ノードCNの通信インフラストラクチャと接続されている。
さらに別の一実施例では、ブースタ群BG自体が、計算ノードCNの通信インフラストラクチャに、または中間通信インフラストラクチャに接続されてもよい。
通信インフラストラクチャは概して、他の特性の中でも、それらのトポロジー、帯域幅、通信プロトコル、スループットおよびメッセージ交換の点で異なっていてもよい。1つのブースタBは、たとえば、1〜1万個のブースタノードBNを含んでいてもよいが、この範囲に限定されない。リソースマネージャRMは概して、ブースタノードBNの一部を管理してもよく、したがってブースタノードBNの総数を区分化して、前記数のブースタノードBNからブースタBを動的に形成してもよい。切替ユニットSは、スイッチ、ルータ、または任意のネットワーク装置によって実現されてもよい。
当業者であれば、コンピュータクラスタ構成の構成要素のさらに別の構成を理解するであろう。たとえば、データベースDBは、コンピュータクラスタ構成のさらに別の構成要素、それぞれのノードによってアクセスされてもよい。図示された計算ノードCNおよび図示されたブースタ群BGはそれぞれ、リソースマネージャRMおよび/または通信インフラストラクチャINにアクセスする、さらに別の多くの計算ノードCNのうちの1つ、および多くのブースタ群BGのうちの1つであってもよい。さらに、少なくとも1つのブースタBから少なくとも1つの計算ノードに計算タスクの少なくとも一部をアウトソーシングすることによって、加速が逆に行なわれてもよい。

Claims (13)

  1. 計算タスクを処理するためのコンピュータクラスタ構成であって、
    複数の計算ノード(CN)を含み、それらの各々は通信インフラストラクチャ(IN)とインターフェイス接続し、それらの少なくとも2つは、前記計算タスクの少なくとも第1の部分を共同で計算するよう構成されており、前記コンピュータクラスタ構成はさらに、
    前記計算タスクの少なくとも第2の部分を計算するよう構成された少なくとも1つのブースタ(B)を含み、各ブースタ(B)は前記通信インフラストラクチャ(IN)とインターフェイス接続しており、前記コンピュータクラスタ構成はさらに、
    前記計算タスクの前記第2の部分の計算のために、少なくとも1つのブースタ(B)を前記複数の計算ノード(CN)のうちの少なくとも1つに割当てるよう構成されたリソースマネージャ(RM)を含み、割当は、予め定められた割当メトリックの関数として達成される、コンピュータクラスタ構成。
  2. 前記予め定められた割当メトリックは、メトリック特定技術の群のうちの少なくとも1つに従って形成され、前記群は、時相論理、割当マトリックス、割当テーブル、確率関数、および費用関数を含む、請求項1に記載のコンピュータクラスタ構成。
  3. 前記予め定められた割当メトリックは、割当パラメータの群のうちの少なくとも1つの関数として特定され、前記群は、リソース情報、費用情報、複雑性情報、拡張性情報、計算ログ記録、コンパイラ情報、優先度情報、およびタイムスタンプを含む、前述の請求項のいずれかに記載のコンピュータクラスタ構成。
  4. 前記複数の計算ノード(CN)のうちの1つへの少なくとも1つのブースタ(B)の前記割当は、信号の群のうちの少なくとも1つをトリガし、前記群は、遠隔手続呼出、パラメータ引渡し、データ伝送を含む、前述の請求項のいずれかに記載のコンピュータクラスタ構成。
  5. 各計算ノード(CN)および各ブースタ(B)はそれぞれ、インターフェーシングユニット(IU1;IU2)を介して、前記通信インフラストラクチャ(IN)とインターフェイス接続している、前述の請求項のいずれかに記載のコンピュータクラスタ構成。
  6. 前記インターフェーシングユニット(IU1;IU2)は、構成要素の群のうちの少なくとも1つを含み、前記群は、仮想インターフェイス、スタブ、ソケット、ネットワークコントローラ、およびネットワーク装置を含む、請求項5に記載のコンピュータクラスタ構成。
  7. 前記通信インフラストラクチャ(IN)は、構成要素の群のうちの少なくとも1つを含み、前記群は、バス、通信リンク、切替ユニット、ルータ、および高速ネットワークを含む、前述の請求項のいずれかに記載のコンピュータクラスタ構成。
  8. 各計算ノード(CN)は、構成要素の群のうちの少なくとも1つを含み、前記群は、マルチコアプロセッサ、クラスタ、コンピュータ、ワークステーション、および汎用プロセッサを含む、前述の請求項のいずれかに記載のコンピュータクラスタ構成。
  9. 前記少なくとも1つのブースタ(B)は、構成要素の群のうちの少なくとも1つを含み、前記群は、メニーコアプロセッサ、スカラープロセッサ、コプロセッサ、図形処理ユニット、メニーコアプロセッサのクラスタ、およびモノリシックプロセッサを含む、前述の請求項のいずれかに記載のコンピュータクラスタ構成。
  10. 前記リソースマネージャ(RM)は、前記計算タスクの少なくとも一部の計算中、前記予め定められた割当メトリックを更新するよう構成されている、前述の請求項のいずれかに記載のコンピュータクラスタ構成。
  11. 計算タスクを処理するためのコンピュータクラスタ構成、特に請求項1〜10の少なくとも1つに記載のコンピュータクラスタを動作させるための方法であって、
    前記複数の計算ノード(CN)のうちの少なくとも2つによって、前記計算タスクの少なくとも第1の部分を計算するステップ(100)を含み、各計算ノード(CN)は通信インフラストラクチャ(IN)とインターフェイス接続しており、前記方法はさらに、
    少なくとも1つのブースタ(B)によって、前記計算タスクの少なくとも第2の部分を計算するステップ(101)を含み、各ブースタ(B)は前記通信インフラストラクチャ(IN)とインターフェイス接続しており、前記方法はさらに、
    前記計算タスクの前記第2の部分の計算のために、リソースマネージャ(RM)によって、少なくとも1つのブースタ(B)を前記複数の計算ノード(CN)のうちの1つに割当てるステップ(102)を含み、前記割当は、予め定められた割当メトリックの関数として達成される、方法。
  12. 請求項11の記載の方法を達成するために構成された、コンピュータプログラム製品。
  13. 請求項12に記載の前記コンピュータプログラム製品を格納するための、コンピュータ読取可能媒体。
JP2018208953A 2010-10-13 2018-11-06 計算タスクを処理するためのコンピュータクラスタ構成、およびそれを動作させるための方法 Active JP6653366B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP10187436.0 2010-10-13
EP10187436A EP2442228A1 (en) 2010-10-13 2010-10-13 A computer cluster arrangement for processing a computaton task and method for operation thereof

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2017152006A Division JP6433554B2 (ja) 2010-10-13 2017-08-04 計算タスクを処理するためのコンピュータクラスタ構成、およびそれを動作させるための方法

Publications (2)

Publication Number Publication Date
JP2019057303A true JP2019057303A (ja) 2019-04-11
JP6653366B2 JP6653366B2 (ja) 2020-02-26

Family

ID=43831684

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2013533215A Active JP6494161B2 (ja) 2010-10-13 2011-10-13 計算タスクを処理するためのコンピュータクラスタ構成、およびそれを動作させるための方法
JP2017152006A Active JP6433554B2 (ja) 2010-10-13 2017-08-04 計算タスクを処理するためのコンピュータクラスタ構成、およびそれを動作させるための方法
JP2018208953A Active JP6653366B2 (ja) 2010-10-13 2018-11-06 計算タスクを処理するためのコンピュータクラスタ構成、およびそれを動作させるための方法

Family Applications Before (2)

Application Number Title Priority Date Filing Date
JP2013533215A Active JP6494161B2 (ja) 2010-10-13 2011-10-13 計算タスクを処理するためのコンピュータクラスタ構成、およびそれを動作させるための方法
JP2017152006A Active JP6433554B2 (ja) 2010-10-13 2017-08-04 計算タスクを処理するためのコンピュータクラスタ構成、およびそれを動作させるための方法

Country Status (18)

Country Link
US (3) US10142156B2 (ja)
EP (3) EP2442228A1 (ja)
JP (3) JP6494161B2 (ja)
KR (3) KR102103596B1 (ja)
CN (2) CN103229146B (ja)
CA (3) CA3145494A1 (ja)
CY (1) CY1122108T1 (ja)
DK (1) DK2628080T3 (ja)
ES (1) ES2743469T3 (ja)
HR (1) HRP20191640T1 (ja)
HU (1) HUE044788T2 (ja)
LT (1) LT2628080T (ja)
PL (1) PL2628080T3 (ja)
PT (1) PT2628080T (ja)
RS (1) RS59165B1 (ja)
RU (1) RU2597556C2 (ja)
SI (1) SI2628080T1 (ja)
WO (1) WO2012049247A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2442228A1 (en) 2010-10-13 2012-04-18 Thomas Lippert A computer cluster arrangement for processing a computaton task and method for operation thereof
WO2014188643A1 (ja) * 2013-05-24 2014-11-27 日本電気株式会社 スケジュールシステム、スケジュール方法、及び、記録媒体
JP2014078214A (ja) * 2012-09-20 2014-05-01 Nec Corp スケジュールシステム、スケジュール方法、スケジュールプログラム、及び、オペレーティングシステム
KR20140093595A (ko) * 2013-01-18 2014-07-28 서울대학교산학협력단 클러스터 시스템의 계산 디바이스 가상화 방법 및 그 시스템
US20160110221A1 (en) * 2013-05-22 2016-04-21 Nec Corporation Scheduling system, scheduling method, and recording medium
KR101594915B1 (ko) 2014-01-23 2016-02-17 서울대학교산학협력단 매니코어 클러스터 시스템 상에서 병렬 프로그래밍을 수행하는 방법 및 매니코어 클러스터 시스템
US9665633B2 (en) 2014-02-19 2017-05-30 Snowflake Computing, Inc. Data management systems and methods
US9584594B2 (en) 2014-04-11 2017-02-28 Maxeler Technologies Ltd. Dynamic provisioning of processing resources in a virtualized computational architecture
US9501325B2 (en) 2014-04-11 2016-11-22 Maxeler Technologies Ltd. System and method for shared utilization of virtualized computing resources
US10715587B2 (en) 2014-04-11 2020-07-14 Maxeler Technologies Ltd. System and method for load balancing computer resources
CN105681366A (zh) * 2014-09-26 2016-06-15 广西盛源行电子信息有限公司 一种把上万台北斗终端接入同一台服务器的算法
CN111865657B (zh) 2015-09-28 2022-01-11 华为技术有限公司 一种加速管理节点、加速节点、客户端及方法
US10432450B2 (en) * 2016-06-30 2019-10-01 Microsoft Technology Licensing, Llc. Data plane API in a distributed computing network
SI3523723T1 (sl) * 2016-10-05 2021-11-30 Partec Ag Visoko učinkovit računalniški sistem in postopek
US11049025B2 (en) * 2017-03-15 2021-06-29 Salesforce.Com, Inc. Systems and methods for compute node management protocols
KR101985899B1 (ko) * 2017-09-29 2019-06-04 주식회사 트레드링스 작업 할당 시스템, 방법, 및 컴퓨터 프로그램
US20210073047A1 (en) * 2017-09-30 2021-03-11 Intel Corporation Technologies for managing accelerator resources by cloud resource manager
JP2021511609A (ja) * 2018-01-23 2021-05-06 パルテック・クラスター・コンペテンス・センター・ゲゼルシャフト・ミット・ベシュレンクテル・ハフツングPartec Cluster Competence Center Gmbh アプリケーションの実行中に決定される異種コンピューティングリソースの動的な割り当て
CN110390516B (zh) * 2018-04-20 2023-06-06 伊姆西Ip控股有限责任公司 用于数据处理的方法、装置和计算机存储介质
WO2019219747A1 (en) 2018-05-15 2019-11-21 Partec Cluster Competence Center Gmbh Apparatus and method for efficient parallel computation
KR20220002284A (ko) 2019-04-30 2022-01-06 베른하르트 프로비터 병렬 계산들을 동적으로 최적화하기 위한 장치 및 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0744504A (ja) * 1993-07-27 1995-02-14 Hitachi Ltd Cpuと複数のpu,fpuから成る演算ユニット
JP2007328415A (ja) * 2006-06-06 2007-12-20 Univ Waseda ヘテロジニアス・マルチプロセッサシステムの制御方法及びマルチグレイン並列化コンパイラ
US20090213127A1 (en) * 2008-02-22 2009-08-27 International Business Machines Corporation Guided attachment of accelerators to computer systems
JP2010092483A (ja) * 2004-09-28 2010-04-22 Intel Corp 利用可能な並列性の量に従って1命令当たりのエネルギーを変化させるための方法及び装置

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1046994A3 (en) * 1994-03-22 2000-12-06 Hyperchip Inc. Efficient direct cell replacement fault tolerant architecture supporting completely integrated systems with means for direct communication with system operator
US7051188B1 (en) 1999-09-28 2006-05-23 International Business Machines Corporation Dynamically redistributing shareable resources of a computing environment to manage the workload of that environment
US7418470B2 (en) * 2000-06-26 2008-08-26 Massively Parallel Technologies, Inc. Parallel processing systems and method
JP2002084302A (ja) * 2000-09-06 2002-03-22 Nippon Telegr & Teleph Corp <Ntt> ネットワークによる通信方法及び装置
RU2188451C2 (ru) * 2000-10-25 2002-08-27 Курский государственный технический университет Система взаимораспределения ресурсов
US7739398B1 (en) * 2000-11-21 2010-06-15 Avaya Inc. Dynamic load balancer
US6922832B2 (en) 2000-12-12 2005-07-26 Lockheed Martin Corporation Execution of dynamic services in a flexible architecture for e-commerce
US20030164842A1 (en) * 2002-03-04 2003-09-04 Oberoi Ranjit S. Slice blend extension for accumulation buffering
US8397269B2 (en) * 2002-08-13 2013-03-12 Microsoft Corporation Fast digital channel changing
US7395536B2 (en) * 2002-11-14 2008-07-01 Sun Microsystems, Inc. System and method for submitting and performing computational tasks in a distributed heterogeneous networked environment
US7137040B2 (en) 2003-02-12 2006-11-14 International Business Machines Corporation Scalable method of continuous monitoring the remotely accessible resources against the node failures for very large clusters
WO2004077259A2 (en) 2003-02-24 2004-09-10 Bea Systems Inc. System and method for server load balancing and server affinity
US7093147B2 (en) 2003-04-25 2006-08-15 Hewlett-Packard Development Company, L.P. Dynamically selecting processor cores for overall power efficiency
US7714870B2 (en) * 2003-06-23 2010-05-11 Intel Corporation Apparatus and method for selectable hardware accelerators in a data driven architecture
US7996839B2 (en) 2003-07-16 2011-08-09 Hewlett-Packard Development Company, L.P. Heterogeneous processor core systems for improved throughput
US20050097300A1 (en) * 2003-10-30 2005-05-05 International Business Machines Corporation Processing system and method including a dedicated collective offload engine providing collective processing in a distributed computing environment
US9264384B1 (en) 2004-07-22 2016-02-16 Oracle International Corporation Resource virtualization mechanism including virtual host bus adapters
JP2006277458A (ja) 2005-03-30 2006-10-12 Hitachi Ltd リソース割当管理装置およびリソース割当方法
WO2007038445A2 (en) * 2005-09-26 2007-04-05 Advanced Cluster Systems, Llc Clustered computer system
US7490223B2 (en) 2005-10-31 2009-02-10 Sun Microsystems, Inc. Dynamic resource allocation among master processors that require service from a coprocessor
US7441224B2 (en) * 2006-03-09 2008-10-21 Motorola, Inc. Streaming kernel selection for reconfigurable processor
US8713574B2 (en) * 2006-06-05 2014-04-29 International Business Machines Corporation Soft co-processors to provide a software service function off-load architecture in a multi-core processing environment
US8589935B2 (en) 2007-05-08 2013-11-19 L-3 Communications Corporation Heterogeneous reconfigurable agent compute engine (HRACE)
US8250578B2 (en) * 2008-02-22 2012-08-21 International Business Machines Corporation Pipelining hardware accelerators to computer systems
US8615647B2 (en) 2008-02-29 2013-12-24 Intel Corporation Migrating execution of thread between cores of different instruction set architecture in multi-core processor and transitioning each core to respective on / off power state
US8434087B2 (en) * 2008-08-29 2013-04-30 International Business Machines Corporation Distributed acceleration devices management for streams processing
US9104617B2 (en) * 2008-11-13 2015-08-11 International Business Machines Corporation Using accelerators in a hybrid architecture for system checkpointing
FR2938943B1 (fr) * 2008-11-21 2010-11-12 Thales Sa Systeme multiprocesseur.
CN101441564B (zh) * 2008-12-04 2011-07-20 浙江大学 为程序定制的可重构加速器实现方法
US9588806B2 (en) * 2008-12-12 2017-03-07 Sap Se Cluster-based business process management through eager displacement and on-demand recovery
US8869160B2 (en) * 2009-12-24 2014-10-21 International Business Machines Corporation Goal oriented performance management of workload utilizing accelerators
CN101763288B (zh) * 2010-01-19 2012-09-05 湖南大学 考虑硬件预配置因素的动态软硬件划分方法
US8875152B2 (en) * 2010-04-22 2014-10-28 Salesforce.Com, Inc. System, method and computer program product for dynamically increasing resources utilized for processing tasks
US8739171B2 (en) * 2010-08-31 2014-05-27 International Business Machines Corporation High-throughput-computing in a hybrid computing environment
EP2442228A1 (en) * 2010-10-13 2012-04-18 Thomas Lippert A computer cluster arrangement for processing a computaton task and method for operation thereof

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0744504A (ja) * 1993-07-27 1995-02-14 Hitachi Ltd Cpuと複数のpu,fpuから成る演算ユニット
JP2010092483A (ja) * 2004-09-28 2010-04-22 Intel Corp 利用可能な並列性の量に従って1命令当たりのエネルギーを変化させるための方法及び装置
JP2007328415A (ja) * 2006-06-06 2007-12-20 Univ Waseda ヘテロジニアス・マルチプロセッサシステムの制御方法及びマルチグレイン並列化コンパイラ
US20090213127A1 (en) * 2008-02-22 2009-08-27 International Business Machines Corporation Guided attachment of accelerators to computer systems

Also Published As

Publication number Publication date
US20190089574A1 (en) 2019-03-21
JP6494161B2 (ja) 2019-04-03
US10142156B2 (en) 2018-11-27
US20210194748A1 (en) 2021-06-24
DK2628080T3 (da) 2019-09-02
US20130282787A1 (en) 2013-10-24
SI2628080T1 (sl) 2019-10-30
CN109491795A (zh) 2019-03-19
CY1122108T1 (el) 2020-11-25
CN103229146A (zh) 2013-07-31
EP3614263A3 (en) 2021-10-06
EP2628080A1 (en) 2013-08-21
RS59165B1 (sr) 2019-10-31
EP3614263A2 (en) 2020-02-26
CA2814309C (en) 2019-03-12
CN103229146B (zh) 2018-12-11
LT2628080T (lt) 2019-10-10
JP2017216000A (ja) 2017-12-07
HUE044788T2 (hu) 2019-11-28
JP6433554B2 (ja) 2018-12-05
HRP20191640T1 (hr) 2019-12-13
KR102103596B1 (ko) 2020-04-23
KR102074468B1 (ko) 2020-02-06
KR20190025746A (ko) 2019-03-11
PL2628080T3 (pl) 2019-11-29
KR20140018187A (ko) 2014-02-12
EP2442228A1 (en) 2012-04-18
RU2013121560A (ru) 2014-11-20
US11934883B2 (en) 2024-03-19
KR20180014185A (ko) 2018-02-07
KR101823505B1 (ko) 2018-02-01
CA3145494A1 (en) 2012-04-19
ES2743469T3 (es) 2020-02-19
CA2814309A1 (en) 2012-04-19
WO2012049247A1 (en) 2012-04-19
PT2628080T (pt) 2019-09-13
CA3027973A1 (en) 2012-04-19
EP2628080B1 (en) 2019-06-12
RU2597556C2 (ru) 2016-09-10
US10951458B2 (en) 2021-03-16
JP2013539881A (ja) 2013-10-28
CA3027973C (en) 2022-03-22
JP6653366B2 (ja) 2020-02-26

Similar Documents

Publication Publication Date Title
JP6433554B2 (ja) 計算タスクを処理するためのコンピュータクラスタ構成、およびそれを動作させるための方法
WO2018119952A1 (zh) 一种设备虚拟化方法、装置、系统及电子设备、计算机程序产品
JP2022050541A (ja) 高性能のコンピューティングシステムおよび方法
US10379883B2 (en) Simulation of high performance computing (HPC) application environment using virtual nodes
KR20160087706A (ko) 가상화 플랫폼을 고려한 분산 데이터 처리 시스템의 자원 할당 장치 및 할당 방법
Kluge et al. An operating system for safety-critical applications on manycore processors
US11138146B2 (en) Hyperscale architecture
KR20150101644A (ko) 이기종 프로세싱 타입을 고려한 맵리듀스 프로그램 모델의 수행 성능 향상 방법, 수행 성능 향상 장치 및 수행 성능 향상 시스템
US20150277978A1 (en) Network processor for managing a packet processing acceleration logic circuitry in a networking device
Misawa et al. Dynamic Reconfiguration of Computer Platforms at the Hardware Device Level for High Performance Computing Infrastructure as a Service
Ihnotic Scaling to 32 GPUs on a Novel Composable System Architecture
Agut et al. High-throughput Computation through Efficient Resource Management
Gu et al. An Effective Model of CPU/GPU Collaborative Computing in GPU Clusters
WO2015153699A1 (en) Computing systems, elements and methods for processing unstructured data

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181113

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181113

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190813

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190924

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191121

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191203

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200127

R150 Certificate of patent or registration of utility model

Ref document number: 6653366

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250