JP6047288B2 - 粒子相互作用を計算するための並行計算アーキテクチャ - Google Patents
粒子相互作用を計算するための並行計算アーキテクチャ Download PDFInfo
- Publication number
- JP6047288B2 JP6047288B2 JP2012015530A JP2012015530A JP6047288B2 JP 6047288 B2 JP6047288 B2 JP 6047288B2 JP 2012015530 A JP2012015530 A JP 2012015530A JP 2012015530 A JP2012015530 A JP 2012015530A JP 6047288 B2 JP6047288 B2 JP 6047288B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- particles
- interaction
- particle
- home box
- 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.)
- Active
Links
- 230000003993 interaction Effects 0.000 title claims description 370
- 239000002245 particle Substances 0.000 title description 486
- 238000000034 method Methods 0.000 claims description 341
- 238000004364 calculation method Methods 0.000 claims description 191
- 238000012545 processing Methods 0.000 claims description 89
- 238000004088 simulation Methods 0.000 claims description 57
- 238000003860 storage Methods 0.000 claims description 21
- 238000000926 separation method Methods 0.000 claims description 4
- 230000008676 import Effects 0.000 description 140
- 230000015654 memory Effects 0.000 description 118
- 238000004891 communication Methods 0.000 description 103
- 238000000354 decomposition reaction Methods 0.000 description 63
- 238000013459 approach Methods 0.000 description 44
- 230000006870 function Effects 0.000 description 43
- 230000027455 binding Effects 0.000 description 30
- 238000009739 binding Methods 0.000 description 30
- 125000004429 atom Chemical group 0.000 description 27
- 230000036961 partial effect Effects 0.000 description 24
- 239000006260 foam Substances 0.000 description 20
- 238000010586 diagram Methods 0.000 description 18
- 230000007717 exclusion Effects 0.000 description 18
- 108090000623 proteins and genes Proteins 0.000 description 18
- 102000004169 proteins and genes Human genes 0.000 description 18
- 239000011159 matrix material Substances 0.000 description 17
- 238000004422 calculation algorithm Methods 0.000 description 16
- 238000013519 translation Methods 0.000 description 16
- 238000009826 distribution Methods 0.000 description 15
- 238000009825 accumulation Methods 0.000 description 14
- 238000009792 diffusion process Methods 0.000 description 14
- 230000000694 effects Effects 0.000 description 14
- 238000001914 filtration Methods 0.000 description 13
- 230000005540 biological transmission Effects 0.000 description 12
- 230000008901 benefit Effects 0.000 description 11
- 230000007423 decrease Effects 0.000 description 11
- 238000005457 optimization Methods 0.000 description 11
- 239000003446 ligand Substances 0.000 description 10
- 238000000324 molecular mechanic Methods 0.000 description 9
- 238000012937 correction Methods 0.000 description 8
- 239000013598 vector Substances 0.000 description 8
- 239000011449 brick Substances 0.000 description 7
- 238000013507 mapping Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000002829 reductive effect Effects 0.000 description 7
- 230000007935 neutral effect Effects 0.000 description 6
- 230000007704 transition Effects 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 5
- 230000010354 integration Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000000329 molecular dynamics simulation Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000007796 conventional method Methods 0.000 description 4
- 230000009881 electrostatic interaction Effects 0.000 description 4
- 230000033001 locomotion Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- 238000000342 Monte Carlo simulation Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 3
- 238000005421 electrostatic potential Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000007689 inspection Methods 0.000 description 3
- 230000000670 limiting effect Effects 0.000 description 3
- 229910052757 nitrogen Inorganic materials 0.000 description 3
- 230000000737 periodic effect Effects 0.000 description 3
- 238000005381 potential energy Methods 0.000 description 3
- 238000000455 protein structure prediction Methods 0.000 description 3
- IJGRMHOSHXDMSA-UHFFFAOYSA-N Atomic nitrogen Chemical compound N#N IJGRMHOSHXDMSA-UHFFFAOYSA-N 0.000 description 2
- 238000005411 Van der Waals force Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 229910052799 carbon Inorganic materials 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 125000004435 hydrogen atom Chemical group [H]* 0.000 description 2
- 150000002605 large molecules Chemical class 0.000 description 2
- 229920002521 macromolecule Polymers 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- VNWKTOKETHGBQD-UHFFFAOYSA-N methane Chemical compound C VNWKTOKETHGBQD-UHFFFAOYSA-N 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000012846 protein folding Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000000638 solvent extraction Methods 0.000 description 2
- 230000007480 spreading Effects 0.000 description 2
- 238000003892 spreading Methods 0.000 description 2
- 229910052717 sulfur Inorganic materials 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- LFQSCWFLJHTTHZ-UHFFFAOYSA-N Ethanol Chemical compound CCO LFQSCWFLJHTTHZ-UHFFFAOYSA-N 0.000 description 1
- 108010052285 Membrane Proteins Proteins 0.000 description 1
- 241000053227 Themus Species 0.000 description 1
- 238000005076 Van der Waals potential Methods 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 230000003281 allosteric effect Effects 0.000 description 1
- 150000001412 amines Chemical class 0.000 description 1
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008499 blood brain barrier function Effects 0.000 description 1
- 210000001218 blood-brain barrier Anatomy 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 150000001720 carbohydrates Chemical class 0.000 description 1
- 235000014633 carbohydrates Nutrition 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 210000001520 comb Anatomy 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 238000000205 computational method Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 229940079593 drug Drugs 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- -1 for example Substances 0.000 description 1
- 230000008571 general function Effects 0.000 description 1
- 230000036433 growing body Effects 0.000 description 1
- 230000036571 hydration Effects 0.000 description 1
- 238000006703 hydration reaction Methods 0.000 description 1
- 229910052739 hydrogen Inorganic materials 0.000 description 1
- 239000001257 hydrogen Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 239000012528 membrane Substances 0.000 description 1
- 238000012900 molecular simulation Methods 0.000 description 1
- 230000005405 multipole Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 125000004433 nitrogen atom Chemical group N* 0.000 description 1
- 102000039446 nucleic acids Human genes 0.000 description 1
- 108020004707 nucleic acids Proteins 0.000 description 1
- 150000007523 nucleic acids Chemical class 0.000 description 1
- 229910052760 oxygen Inorganic materials 0.000 description 1
- 239000001301 oxygen Substances 0.000 description 1
- 125000004430 oxygen atom Chemical group O* 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 229910052698 phosphorus Inorganic materials 0.000 description 1
- 230000000704 physical effect Effects 0.000 description 1
- 230000036544 posture Effects 0.000 description 1
- 238000005182 potential energy surface Methods 0.000 description 1
- 230000004853 protein function Effects 0.000 description 1
- 238000012887 quadratic function Methods 0.000 description 1
- 230000002040 relaxant effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 230000005476 size effect Effects 0.000 description 1
- 229910001415 sodium ion Inorganic materials 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 231100000419 toxicity Toxicity 0.000 description 1
- 230000001988 toxicity Effects 0.000 description 1
- 231100000041 toxicology testing Toxicity 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/25—Design optimisation, verification or simulation using particle-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B15/00—ICT specially adapted for analysing two-dimensional or three-dimensional molecular structures, e.g. structural or functional relations or structure alignment
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16C—COMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
- G16C10/00—Computational theoretical chemistry, i.e. ICT specially adapted for theoretical aspects of quantum chemistry, molecular mechanics, molecular dynamics or the like
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Chemical & Material Sciences (AREA)
- Crystallography & Structural Chemistry (AREA)
- Biotechnology (AREA)
- Evolutionary Biology (AREA)
- Medical Informatics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Multi Processors (AREA)
- Communication Control (AREA)
Description
対を列挙することにより系内の物体のすべての対の間の相互作用を決定する作業は、多量の計算を必要とし、そのため、反対称相互作用法が使用されることが多い。例えば、特定の粒子の定義済み半径内にあるすべての粒子は、遠く離れている粒子は無視しつつ、その粒子と相互作用する。シミュレーションに要する総計算時間を短縮するために、専用ハードウェアも用いられている。
通信システムは、トロイダル形状のメッシュを形成する。
通信システムは、分離コンポーネントを備え、それぞれのコンポーネントは計算ノードの異なる近傍をリンクする。
ードの間の2地点間リンクを含む。
粒子データの少なくとも一部を複数の計算ノードの他のノードに送ることは、通信システムの複数の分離コンポーネントにわたって他の計算ノードを介してデータを渡すことを含む。
通信サブシステムは、プロセッサ・サブシステムの介入なしで一方の計算ノードから他方の計算ノードへ粒子データを渡すように構成可能である。
(i)計算にそのデータを必要とする複数の計算ノードの他のノードに粒子データを送り、
(ii)複数の計算ノードのうちの他のノードから送られた粒子データを受け取り、
(iii)受け取った粒子データを使用して計算を実行し、第1の結果を出力し、
(iv)第1の結果を複数の計算ノードの他のノードに送り、
(v)第1の結果を複数の計算ノードの他のノードから送られる第1の結果を受け取り、
(vi)受け取った第1の結果を使用してさらに計算を実行し、第2の結果を出力するように構成されている。
システムは、(i)〜(vi)のステップ全て又はいくつかを連続して反復するように構成される。
通信システムは、計算ノードから粒子データを受け取り、その粒子データを複数の計算ノードのうちの他のノードの近傍に分配するように構成される。
計算ノードのそれぞれは、さらに、通信システムの通信サブシステムを備え、通信サブシステムはプロセッサ・サブシステムの介入なしで一方の計算ノードから他方の計算ノードへ粒子データを渡すように構成可能である。
計算サブシステムは、さらに、そのノードで処理サブシステムの介入なしで、第1の結果を複数の計算ノードのうちの他の計算ノードに送ることを目的とする。
メモリ・サブシステムは、さらに、受け取った第1の結果に基づくデータを処理サブシステムに供給することを目的とする。
実行し、第2の結果を出力することを目的とする。
粒子データは、粒子位置データを含む。
第2の結果は、粒子位置データを含む。
他の態様では、一般に、並列処理システムで使用する処理ノードは、サブシステムのグループを含む。サブシステムのこのグループは、プロセッサ・サブシステム、計算サブシステム、およびメモリ・サブシステムを含む。システムは、さらに、複数のサブシステムからなるグループに含まれるいくつかのサブシステムをリンクし、ノードのサブシステムと処理システムの他の処理ノードのサブシステムとの間にリンクの少なくとも一部を形成する通信サブシステムも含む。計算サブシステムは、空間的位置にそれぞれ関連付けられているデータ要素の間の対毎の計算を実行する回路を備える。
プロセッサ・サブシステムは、実質的に一般的な計算を行うようにプログラム可能である。
通信サブシステムは、一群のインターフェイス・ユニットを含み、それぞれのインターフェイス・ユニットはサブシステムのグループに含まれる1つのサブシステムにリンクされ、通信サブシステムは、さらに、他の複数の処理ノードのインターフェイス・ユニットとリンクするための1つまたは複数のインターフェイス・ユニットを備える。
通信システムは、同じ処理ノード上のサブシステムと異なる処理ノード上のサブシステムとの間でアドレス指定可能なメッセージ受け渡しを実現する。
計算サブシステムは、それぞれ粒子シミュレーション・システム内の粒子およびグリッド位置を伴う計算を行うように適合可能である。
メモリ・サブシステムは、集積回路の外部の記憶装置デバイスとのインターフェイスを備える。
他の態様では、一般に、計算システムは、処理モジュールの1つまたは複数の直列に相互接続された処理グループに配列された処理モジュールのアレイを備える。処理モジュールはそれぞれ、データ要素用の記憶装置を備え、データ要素の間の対毎の計算を実行する回路を備え、対毎の計算のそれぞれは、処理モジュールの記憶装置からのデータ要素および直列に相互接続された処理モジュールを通過するデータ要素を使用する。
処理モジュールのアレイは、2つまたはそれ以上の直列に相互接続された処理グループを含む。
このシステムは、さらに、処理グループ間にデータ要素を分配するための分配モジュールを備える。
他の態様では、一般に、処理モジュールは、マッチング・ユニットの集合を含み、それぞれのユニットはデータ要素の第1の集合の異なる部分集合に対する記憶装置に関連付けられている。処理モジュールは、さらに、データ要素の第2の集合内の一連のデータ要素を受け取るための入力を備え、この入力はマッチング・ユニットのそれぞれに結合されており、受け取ったデータ要素をマッチング・ユニットに渡す。このモジュールは、さらに、マッチング・ユニットにより選択された、第1の集合から取った1つのデータ要素と第2の集合から取った1つのデータ要素からなる、データ要素の複数の対を受け取るためマッチング・ユニットに結合された計算ユニット、および計算ユニットにより出力される結果を送出するための出力を備える。
モジュールは、受け取った一連のデータ要素を他のモジュールに送出するための出力を備える。
モジュールは、計算ユニットにより出力される結果と結果を受け取るための入力で受け取った結果とを組み合わせるマージ・ユニットを備える。
他の態様では、一般に、方法は、データ要素の第1の集合を受け取ることと、データ要素の第1の集合を処理モジュールの1つまたは複数の直列に相互接続された処理グループに配列されている処理モジュールのアレイの記憶装置に分配することと、データ要素の第2の集合を受け取ることと、データ要素を直列に相互接続された処理グループに通すこととを含む。
第1の集合および第2の集合のデータ要素は、多体シミュレーション・システム内の物体に関連付けられる。
この方法は、さらに、複数の処理モジュールのうちの少なくともいくつかの処理モジュールのそれぞれにおいて、データ要素の全部ではなく一部を選択することを含み、データ要素は対毎の計算の実行に関して処理グループを通過する。
データ要素の複数の対を選択することは、データ要素に関連付けられている空間的位置の間の距離間隔に応じて対を選択することを含む。
1 概要
1.1 分子力学
1.2 分子力場
1.3 対毎の相互作用
1.4 メッシュ・ベースの計算
1.5 文書の編成
2 NT、SH、およびHS法
2.1 HS法
2.2 NT法
2.3 SH法
3 一般化分解
3.1 畳み込み判定基準
3.2 割り当て規則
3.2.1 HS、NT、およびSHアナログ方式の割り当て規則
3.2.2 中間点割り当て規則
3.2.3 擬似ランダム割り当て規則
3.2.4 計算負荷分散
3.2.5 並進不変性
3.3 可換な相互作用
3.4 丸め判定基準
3.5 高次元での分解
4 共有通信
5 対リストおよび除外グループ
6 マルチ・ゾーン法
6.1 インポート体積の下限
6.2 最適化優先度
7 一般化分解の適用
7.1 1/8シェル法7.2 スライス1/2シェル法
7.3 マルチ・ゾーンNTおよびSNT法
7.4 泡法
7.5 通信帯域幅要件の比較
7.6 多粒子相互作用
8 シリアル化実装
9 クラスタ・アーキテクチャ
10 並列実装
11 応用
12 代替え。
多体相互作用(「N体」問題と呼ばれることが多い)のシミュレーションは、天体力学および計算化学を含む多くの問題領域において有用である。例えば、生体分子または静電気粒子相互作用のシミュレーションは、系内の粒子間の相互作用の非常に詳しい図を描くことにより実験を補完するものである。シミュレーションにおける重要な課題は、シミュレーション速度である。
分子シミュレーションの1アプローチは、主に物理学に基づくものであり、分子系の物理学の数学モデルに基づいて構造を予測する。タンパク質は、原子レベルでモデル化され、個々の原子または原子の複数のグループはN体系内の点物体として表される。これらの方法のうちの1つは、それぞれの粒子に加わる力を計算し、ニュートンの法則の数値積分を用いて時間の経過とともに変わるそれぞれの原子の物理的軌道を予測する分子力学(MD)である。代替えの方法として、系のポテンシャル・エネルギー面の確率的サンプリングを行うモンテカルロ法の一種がある。物理学ベースの方法は、ホモロジー・モデルを精密化するために使用されるか、または単独で適用され、スクラッチからタンパク質構造を決定する。MDは、さらに、タンパク質折り畳みの過程を調査するためにも使用される。
分子系が与えられた時刻においてそれらの状態のうちの1つの状態にある確率が高くなるということである。アンサンブルの自由エネルギーは、アンサンブル内のすべての状態にわたって確率の総和を求めることにより計算される。状態の確率は、系の温度に依存するポテンシャル・エネルギーの指数関数である(特に、計算ではボルツマン分布を使用する)。実際的な言い方では、このことは、タンパク質構造予測に関して、MDシミュレーションを1回実行し、ある時点において停止し、終端立体構造を固有の状態とみなすだけでは不十分であることを意味する。最低でも、そのようなシミュレーションの終わり近くで多くの立体構造がサンプリングされるべきである。それどころか、複数の別々のシミュレーションを実行し、結果同士を比較する必要がある場合がある。
構造ベースの問題に対する物理学ベースの方法では、これらの計算方法の「内側ループ」は、分子系が与えられた場合に、(a)系のポテンシャル・エネルギーを全体として計算するか、または(b)系の残り部分との相互作用によるそれぞれの粒子に対する力を計算するという問題を解くように選択することが可能である。((b)の力は、単に、(a)の3次元ベクトル勾配であり、問題の2つのバリエーションは計算に関して類似のものとなる。)これらの力およびエネルギーは、一般に、分子力場と呼ばれる特定のタイプのモデルに従って計算される。
は、酸素原子に結合されたものと異なる部分電荷を有する(アルコール)。炭素、水素、酸素、および窒素のそれぞれに複数の種類が容易に挙げられる。これらに使用される種類の原子およびパラメータの集合は、特定の力場を定義する特性のうちの1つである。
多数の場におけるシミュレーションは、粒子の明示的な対毎の相互作用を計算することを必要とする。上述の生化学における分子力学およびモンテカルロ・シミュレーションに加えて、類似のシミュレーションを物質科学、宇宙物理学およびプラズマ物理学におけるN体シミュレーション、ならびに流体力学における状態シミュレーションの粒子ベースの流体力学および方程式に適用することが可能である。このようなシミュレーションの計算作業負荷を低減するために、粒子のすべての対の間の相互作用を計算する代わりに、1アプローチでは、ある相互作用半径R未満の距離だけ隔てられている対の間の相互作用のみを計算する。これらの相互作用は、「近距離相互作用」と呼ばれる。残りの相互作用(「遠距離相互作用」)は、無視されるか、または計算量の少ない方法で取り扱われる。相互作用半径を制限することに関連して無駄を省く場合であっても、近距離相互作用はそのまま計算コストに対し支配的である。この計算を並列処理および/または直列処理について分解する方法は、これらのシミュレーションに必要な総時間数および/またはこれらのシミュレーションに必要な計算または通信を低減するうえで有用と思われる。
上で導入されているように、粒子の間、例えば、最大相互作用半径よりも広く隔てられている粒子の間の遠距離相互作用は、計算量の少ない方法を使用して計算することができる。このようなアプローチの1つは、同時係属出願である米国出願第11/171,619号、米国出願第11/171,634号、国際出願第PCT/US2005/0231
84号において詳述されているようなEwald法に基づく。
フーリエ領域の計算を伴う部分の実装は、3つのフェーズに分割できる。第1に、(無限および周期的)連続3次元空間r上で定義されている離散型電荷分布
本明細書の残り部分は、以下のように編成される。第2節から第7節までは、粒子の間の範囲制限された対毎の相互作用を計算すること、またはより一般的には、空間内の点の対に関連付けられている範囲制限された計算を実行することに適用可能なアルゴリズムに関係するが、ただし、対は、N体問題における粒子の対に対応するか、または対は、例えば、電荷拡散または力補間法の一部として1つのグリッド点と1つの粒子点に対応しうる。
2 NT、SH、およびHS法
近年登場したNT法およびSH法は、従来の空間分解法の1例である、「1/2シェル」またはHS法とともに、以下の枠組み内で説明することができる。シミュレートされる
粒子(物体)の系は、グローバル・セルと呼ばれる矩形のボックス内に入っていると仮定する。3つの方法すべてにおいて、このグローバル・セルを小さなボックスからなる正則な矩形3次元グリッドに分割する。これらの小さなボックスをホームボックスと呼ぶ。1並列実装では、ホームボックスとプロセッサとの間に1対1対応関係を割り当てるが、プロセッサとそのホームボックスは入れ換えて参照できる。これらの方法は、そのような実装の内容について以下で説明され、いくつかの代替え実装が、この説明の後に提示される。
従来の分解では、一般に、2つの粒子は、その一方が置かれているホームボックス内で相互作用する。特にHS法では、粒子の対が相互作用する位置は、粒子は小さなx基準座標とホームボックス内で相互作用すること、2つの粒子が同じx基準座標を有する場合、粒子は、小さなy基準座標とホームボックス内で相互作用すること、これらは、同じy基準座標を有する場合、小さなz基準座標とホームボックス内で相互作用することという規則に従って相互作用する。また、これらは、同じz基準座標を有する場合、同じホームボックス内にあり、相互作用はそこで完了する。同じホームボックス上の粒子間の相互作用は、「局所的相互作用」と呼ばれるが、異なるホームボックス上の粒子間の相互作用は、「遠隔相互作用」と呼ばれる。
NT法では、2つの粒子は、1つの粒子に関連付けられているxおよびy基準座標および他の粒子に関連付けられているz基準座標を有するホームボックス内で相互作用する。より具体的には、粒子同士が相互作用するホームボックスのxおよびy基準座標は、より小さなx基準座標を持つ粒子の基準座標であるか、または両方の粒子が同じx基準座標を有する場合には、より小さなy基準座標を持つ粒子の基準座標である。粒子同士が相互作用するホームボックスのz基準座標は、他の粒子のz基準座標である。2つの粒子が同じxおよびy基準座標を有する場合、それらの粒子は、低いz座標を持つ粒子のホームボックス上で相互作用する。
SH法では、辺長hの立方体ホームボックスを仮定する。ここで、
一般化クラスの方法では、それぞれのプロセッサは、2つの相互作用ゾーンから粒子をインポートし、一方のゾーンからの粒子と他方のゾーンからの粒子とを相互作用させる。ゾーンの対は、すべての近距離相互作用が必ず計算されるようにする方法の実装について選択される。囲まれた立方体内でそれぞれの粒子が他の粒子と相互作用する場合と、囲まれている球体内でそれぞれの粒子が他の粒子と相互作用する場合の両方について考察される。半径Rの球体領域は、辺長2Rの外接立方体の体積のおおよそ半分を有するため、「丸め」により、通信帯域幅要件を低減することができる。
A.粒子は、2次元x−y平面に制限される。
B.粒子の対は、x次元方向にはR未満の距離だけ隔てられ、y次元方向にはR未満の距離だけ隔てられている場合に、かつその場合に限り相互作用する(つまり、ユークリッド距離は、Rよりも大きくてもよい)。
C.ホームボックスは、辺長hの正方形であり、Rは、hの整数倍である。同様に、相互
作用ゾーンは、完全なホームボックスのみからなる(「ボクセル化法」)。
D.相互作用は、非可換である。したがって、粒子aとbの対について、ここで、aのbに対する影響とbのaに対する影響を別々に計算しなければならない。(2つの粒子の間の力は、通常、ニュートンの第三法則により可換な相互作用として取り扱われ、粒子aに対する相互作用による力は、粒子bに対する力と等しく、反対の向きである。非可換な相互作用も、実用上興味深く、例えば、それぞれの粒子の、近くのメッシュ点に対する影響を計算したい場合がある。)
これらの単純化は、以下では、簡略化された問題の最初の説明の後、徐々に緩和される。
の次元における周期がゾーン820の幅に等しくなるように位置決めされたホームボックスのサイズのボックスからなる「泡」状構造である。ホームボックス810は、ゾーン830内のそれぞれの粒子に対するゾーン820内のそれぞれの粒子の影響を計算する。
それぞれのホームボックスに関連付けられている並進不変性ゾーンの対が与えられた場合、すべての必要な相互作用が計算されたことの検証は、畳み込みベースの判定基準を用いて実行される。ここでは、方法の受け入れ領域を、ホームボックスに影響を及ぼす空間の領域として定義する。特に、受け入れ領域は、対のレベルでさらにフィルタ処理が使用されない場合に局所的粒子に影響を及ぼすすべての遠隔粒子を含むことを保証されている空間の最小体積である。判定基準は、ホームボックスの受け入れ領域が、相互作用近傍全体を確実に含むようにすることに基づく。
、図11では、ホームボックス1130のゾーン1120と1130は隣接していない。
分解は、それぞれのホームボックスに関連付けられた相互作用ゾーンに関して記述できる。代替え記述は、割り当て規則の形を取り、一方の粒子の他方の粒子への影響をその位置の関数として、またはそれらの粒子が最初に置かれているプロセッサ上で、計算するプロセッサを指定する。このような記述は、すでに上で示されているHSおよびNT法を含む、方法のいくつかを記述する際に無意識のうちに使用されている。
図5に例示されている、HS法の簡略化されたアナログについては、割り当て規則は、(ia→b,ja→b)=(ib,jb)として表すことができる。図6に例示されている、NT法の簡略化されたアナログについては、割り当て規則は、(ia→b,ja→b)=(ia,jb)として表すことができる。
割り当て規則は、さらに、粒子aおよびbの位置に関しても指定される。例えば、mid(a,b)がaおよびbの座標の間の幾何学的中間点を表すために使用される場合(つまり、xmid(a,b)=(xa+xb)/2)、割り当て規則は、(ia→b,ja→b)=(imid(a,b),jmid(a,b))として表わされる。さらに一般的に、必ずしも点の幾何学的中間点ではない、粒子の座標から空間内の他の点(「中間位置」)への中間点マッピングm(a,b)を使用することができ、中間点規則は、「中間点」の適当な定義により3つまたはそれ以上の点に適用される。例えば、点の集合の中間点は、すべての点を含む最小球体の中心として定義される。他の実施例としては、平均位置がある(例えば、集合内の点の座標を平均するそれぞれの座標方向について)。
それぞれのホームボックスについて定義されている特定のインポート領域では、相互作用に必要な粒子データは、複数のノードにインポートされるか、または複数のノード上ですでに利用可能であることがきわめて頻繁にある。例えば、ホームボックスのサイズがh=8{A}、相互作用半径がR=10{A}である図36に示されている実施例では、粒子a 3631とb 3632との間の相互作用に必要なデータは、インポート領域3622を有する、ホームボックス3612のある、プロセッサからも利用できる。一般に、この実施例では、粒子の対に対するデータは、最大9=32個のホームボックス(3次元バージョンでは、27=33個のホームボックス)に関連付けられているノードから利用できる。この特定の場合の相互作用の大半について、相互作用を実行することが可能なノードが少なくとも2つあり、さらに多くがあることはきわめて頻繁なことである。
を実行すべきかどうかを決定するためにノード間の通信をあるとしても少しだけ使用して擬似ランダムな決定を下す。ただ1つのノードで相互作用を計算することが可能な場合に、この実施例では、そのノードは粒子位置の中間点を含む。
上述の擬似ランダム割り当て規則に関係するアプローチでは、一般に対毎のそれぞれの計算を実行するために複数のノードが利用可能であるという事実が負荷分散に使用され、ノード同士は連携してそれぞれの計算が1回だけ実行されるように、また計算の望ましい負荷分散が行われるようにどの計算がどのノードで実行されるかを決定する。ここでは、あるクラスの方法を「中間点保証法」と呼び、それぞれのプロセッサは、上述の中間点法でインポートされるのと同じデータをインポートするが、プロセッサへの相互作用計算の割り当ては、計算負荷がプロセッサ間により均等に分けられるように調整される。
次いで、それぞれのプロセッサは、半径R/2の球体内に入る、そのプロセッサから利用可能なm個の粒子のすべての組合せからなる、局所的計算可能相互作用の集合を見つける。それぞれのプロセッサiは、局所的に計算可能な相互作用の集合を、左の隣接要素(プロセッサi−1)上でも計算可能な相互作用、右の隣接要素(プロセッサi+1)上でも計算可能な相互作用、およびプロセッサi上でのみ計算可能な相互作用の、3つの重なり合わない部分集合に分割する。これらの部分集合をそれぞれLi、Ri、およびCiと表し、そのサイズをli、ri、およびciで表す。RiおよびLi+1は、ちょうど同
じ要素、つまり、ボックスiとボックスi+1との間の境界の距離R/2の範囲内にあるm個の粒子のすべての組合せを含み、したがって、ri=li+1となる。
および負の方向に相互作用ボックスを超えて距離R/2だけ伸びている直方体となるように少し拡大すると利用可能になる。ここでは、この一般化を2次元の場合について説明するが、インポート領域の外側境界は、矩形である(相互作用ボックスが正方形であれば正方形)。相互作用ボックスの辺長はすべてインポート半径Rよりも大きいと仮定すると、個々の相互作用は、共通のコーナーを共有する4つのボックス上で、共通の辺を共有する2つのボックス上で、または単一のボックスでのみ、計算可能としてよい。ここでの戦略は、第1に、隣接する列内の2つまたは4つのボックスにより計算できるそれぞれの相互作用を一意的な1つの列に割り当て、次いで、隣接する行内のボックスにより計算できる相互作用を一意的な1つの行に割り当てることである。式1の中のri、ci、およびci+1に適切な値を代入し、1次元の場合にRiを分割するために使用したのと同様の手順を反復適用することによりこれらの割り当てを実行する。
。
これまで説明してきた分解方式は、並進不変である。つまり、それぞれのホームボックスは、関連付けられている相互作用ゾーンと同じ空間関係を有する。割り当て規則により、必ずしも並進不変でない分解を記述することができる。
並進不変な方式の部分集合は、相互作用ホームボックスの論理x座標が粒子の論理x座標にのみ依存し、y座標についても同様に依存するという意味で分離可能である。本明細書で説明されている方式の大半は、ここでもまた、アプローチの多くは、分離不可能な場合にも直接に、またはある程度修正して適用可能であるということを理解したうえで、分離可能である。
上に示されている簡略化された問題における仮定の1つ(上でDのラベルが付けられている)は、粒子aとbの対について、aのbに対する影響とbのaに対する影響を別々に計算するというものであった。大半ではないとしても多くの応用において、これらの影響は対称性を有し、これにより、ただ1つの相互作用を計算すればよい。相互作用が可換でないとしても、計算には、粒子位置などの同じ入力が必要な場合がある。これを利用して、同じホームボックスで両方の非可換相互作用を計算することにより通信要件を低減することができる。
ある。伝送領域および受け入れ領域は、密に関係している。受け入れ領域を決定するために使用されたのと類似の手順で伝送領域を決定することが可能であるが、ただし、「赤色」ゾーンと「青色」ゾーンの役割を反転する。その結果、伝送領域は、単なるホームボックスを中心として鏡映された受け入れ領域であることになる。2つの領域の和集合は、受け入れ領域が相互作用近傍の「対称的な半分」を含む場合かつその場合に限り相互作用近傍全体を含む。つまり、2つの領域は、受け入れ領域内に入らない相互作用近傍内の任意の点について、ホームボックスを中心とする鏡映より得られる点が受け入れ領域内に入る場合に、相互作用近傍全体を含む。
上で導入されたように、上記のアプローチは、相互作用半径である、Rよりも短いユークリッド距離だけ隔てられている粒子間の相互作用の計算に関係する。簡略化された2次元問題では、したがって、それぞれの粒子は、上の仮定Bで説明されているように、辺長2Rの正方形ではなく半径Rの円内に入る粒子と相互作用する。同様に、ホームボックスの相互作用近傍は、上で考察された正方形領域の部分領域であり(仮定Bの帰結として)、部分領域のコーナーは、少なくとも一部は相互作用近傍内に入るホームボックスの限界まで伸びるのではなく「丸め」られる。この丸めを通して体積を低減するそのような相互作用近傍の使用は、インポート領域のサイズを縮小し、それにより、相互作用すべき粒子に関する情報をインポートするために必要な通信の量を減らすために活かされる。インポート領域のサイズを縮小するこの技術は、「丸め」と呼ばれる。
上述の簡略化された技術は、高次元の場合に一般化される(上記の仮定Aを緩和する)。それぞれのホームボックスが一方の並進不変性相互作用ゾーン内の粒子を他方のゾーン内の粒子と相互作用させる方法が与えられた場合、畳み込み判定基準または割り当て規則を使用して、距離R内のすべての粒子対が相互作用するかどうかを決定し、次いで、丸め判定基準により相互作用ゾーンを丸めることができる。上述の3次元HS、SH、NT、およびSNT法は、この一般的なクラスの方式の具体的なインスタンスである。
A.一方のゾーンが単一のホームボックスのみを含み、他方のゾーンが相互作用近傍の端から端まで広がるホームボックスの1つの行を含む分解。これは、図12に例示されているHSアナログと図13に例示されているNTアナログの両方の次元、および図14に例示されているSHアナログの水平方向次元についての場合である。
B.一方のゾーンが複数の隣接ホームボックスからなり、他方のゾーンは相互作用近傍の端から端まで規則正しい間隔で並ぶ個々の非隣接ホームボックスの集合からなる。これは、図15に例示されている「泡」アナログの両方の次元、および図14に例示されている
SHアナログの垂直次元の場合である。
それぞれの次元について以下の4つの選択肢のうちの1つを選択することによりそのような方法の1つのゾーンを構成することができる。
・a’.単一のホームボックス、
・b.その次元にわたって規則正しい間隔で並べられた個別のホームボックスの集合、
・b’.複数の隣接ホームボックスからなるブロック。
3つの次元では、この記述に適合する一意的な分解は20ある。ただし、1つの次元にそって相互作用ゾーンのうちの1つを半分にすることにより相互作用の可換性を利用すると仮定する。
小される。図2および19〜21に例示されている、HS、クラウド、シティー、および泡法を含む他の分解では、それぞれ、3次元丸めを実行できる。つまり、これらにより、3次元空間内のホームボックスから距離Rを超える受け入れ領域の大半の部分を排除するために相互作用ゾーンの1つを縮小することができる。このような丸めにより、それぞれの粒子が、何らかのさらに大きな領域ではなく、囲む半径Rの球体とほぼ同様の形状の領域内にあるすべての粒子と相互作用することが保証される。丸められたゾーンおよび受け入れ領域のサイズは、丸められていない場合と比べてπ/6、2次元の丸めの場合と比べて2/3に縮小できる。ゾーンの3次元丸めは、3つの次元すべてにおいて分解aまたはbを使用したときに可能である。
・一方または両方のゾーンが複数の非隣接断片(例えば、上記の分解b)を伴う方法では、断片の間の間隔を適宜選択する。これは、SH法により使用される技術である。
4 共有通信
上記の中間点法は、計算の複数の異なる成分で同じ通信される粒子データを利用し、これによりそれぞれの成分が別々に並列化される場合と比べて必要な総通信量が低減されるため、分子力学シミュレーションの並列化に特に適している。一般に、最大4個までの粒子の相互作用とともに、対毎の静電気およびファン・デル・ワールス項を伴う、結合力項の評価を並列化するために使用することが可能である。さらに、これにより、結合力項の評価を含む、MD計算の複数の成分は、隣接原子の対の間の静電気およびファン・デル・ワールス力の評価のため伝達される同じデータに頼ることができる。
たはマルチグリッド・ソルバーを使用して、メッシュ上の静電ポテンシャルを、そのメッシュ上で電荷分布が与えられた場合について計算する、粒子−粒子・粒子メッシュ(PPPM)、粒子メッシュEwald(PME)、格子ガウス・マルチグリッド(LGM)、およびガウス分割Ewald(GSE)などのメッシュ・ベースのEwald法を含む。これらの方法では、修正された静電相互作用はあるカットオフ半径内で明示的に計算される必要があり、ここでは、このカットオフ半径は、ファン・デル・ワールス・カットオフ半径r2と同じになるように選択されると仮定するが、典型的にはそうである。これらの方法では、さらに、フーリエ領域またはマルチグリッド計算の前に電荷が粒子から隣接メッシュ点にマッピングされること、およびその後、粒子に加えられる力が隣接メッシュ点のところのポテンシャルから計算されることが必要である。電荷拡散の計算では、それぞれのメッシュ点上の電荷は、複数の隣接粒子にわたる総和として決定されるが、力拡散の計算では、それぞれの粒子に加えられる力は、複数の隣接メッシュ点にわたる総和として計算される。電荷拡散または力拡散のいずれかにおいて、粒子とその粒子と「相互作用する」メッシュ点との間の最大距離をr3で表す。r3の値は、使用される長距離静電気力法のパラメータに依存するが、典型的には5{A}程度である。
いて、データは、粒子移動が別々に実行された場合よりも多くのボックスからインポートされる必要があるが、それは、インポートされるべきデータは、相互作用ボックスから距離r2/2の範囲内にある点を含むボックス上のみではなく、相互作用ボックスからr2/2+r4の距離の範囲内にある点を含む任意のボックス上に置かれる場合があるからである。)これは、一般的に、NT、HS、またはES法の場合に当てはまらず、その場合粒子が相互作用ボックスに近接していても、粒子がその相互作用ボックスによりインポートされることが保証されないことに留意されたい。
相互作用する粒子の対を識別することを伴うアプローチでは、粒子の複数の対が識別された時点で相互作用の計算が実行されるように計算を分配される。それとは別に、NT法などのアプローチが、相互作用する粒子の対を識別するために使用されるが、対が識別されるときに計算を実行するのではなく、対のリストが生成される。次いで、必要な計算を反復するためにリストが使用される。例えば、対毎の計算が開始する前に対のリストが完全に計算されるか、または他のソフトウェアまたはさらに多くの対が計算されている間にハードウェア・モジュールがリストを受け取り、相互作用を計算するパイプライン化アプローチが使用される。いくつかのハードウェア・アーキテクチャでは、対毎の計算から対リストの生成を分離すると、例えば、より単純なハードウェアまたはより効率的にコーディングされた内側ソフトウェア・ループを使用して対毎の相互作用を計算できるようにすることにより、計算効率を高めることができる。
い。半径R内にあるが、非結合相互作用を有していない粒子の対は、除外対と呼ばれる。
一般に、上で考察した方法では、2つの重なり合うゾーンが相互作用する−ホームボックス/シェル、タワー/プレート、ベース/コーム、レンガ/泡、または一般的に、青色/赤色。この節では、複数のゾーンを伴う方法を考察し、その対は、使用される特定の方法に応じて相互作用するように選択することができる。そのようマルチ・ゾーン法では、インポート領域およびホームボックスは、複数の潜在的に重なり合うゾーンの集合の和集合として取り扱われる。1つのゾーン内の粒子は、他のゾーンの部分集合内のすべての粒子と相互作用する。
(ia←→b,ja←→b)=(min(ia,ib),min(ja,jb))
に対応する。
13)。最後に、ホームボックスは、他のホームボックスからの粒子について計算された力を受け取る動作を終了する(ステップ2514)。
計算する必要のある対毎の相互作用の数を考慮することによりマルチ・ゾーン法のインポート体積(Vimport)に下限を設けている。この下限は、
対称性により、有効長距離相互作用領域の体積は、立方体ホームボックスに関して最小化される(αx=αy=αz=1)。これにより、ホームボックス・アスペクト比とは無関係の緊密度の低い下限が
この節では、一般化アプローチの特定のインスタンスが提示される。ほとんどの方法は、特定の意味で最適であることが実証されていないが、多くの場合において、これらの方法は、意図された形態に対する帯域幅に関して最適であるか、または最適に非常に近いと考えられる。説明されているほとんどの方法において、適用される必要のある唯一の相互作用フィルタ処理は、相互作用半径および局所的相互作用フィルタ処理である。つまり、フィルタ処理は、一般的には、同じホームボックスから出る粒子の対の場合以外、系内で粒子の対を複数考慮することを避ける必要はない。
HS法のインポート領域は、4つのコーナー・インポート部分領域、6つの辺インポート部分領域、および3つ面インポート部分領域からなる。面部分領域は、1つの次元で異なるホームボックス、2つの次元で異なる辺部分領域、および3つの次元すべてで異なる
コーナー部分領域を含む。直観的には、1/2シェル法は、低い並列度限界(αR<0.64)で実現可能な最良のものと思われる。しかし、この場合はそうではない。
(ia←→b,ja←→b,ka←→b)=(min(ia,ib),min(ja,jb),min(ka,kb))
により記述される。全インポート体積は、
範囲0.64<αR<1.20に対するあるクラスの方法は、最適化優先度によく合う場合がある。図30を参照すると、スライス1/2シェル(SHS)は、スライスされた半球配列の4つのコーナー・インポート部分領域3010(単一ゾーンC4として表される)と5つの面インポート3020(5つのゾーンN、S、E、W、Lとして表される)からなる。SおよびW面インポートは、ホームボックス3030と相互作用しないのでNおよびE面よりも遠くで丸めることが可能であることに留意されたい。図30に対応するスケジュールは、図31に示されている。
マルチ・ゾーンNT法のスケジュールは、上で説明され、図24に示されている。図32を参照すると、図18に例示されている2ゾーンSNT法のマルチ・ゾーンは、ホームボックス3210の下にある、拡張ベース3220からなる。コーム3230およびホームボックスと同じ高さのベースの部分3240は、4つのインポート領域を形成する。コーム3250の残り部分は、残りのインポート領域を形成する。マルチ・ゾーンSNT法は、図33に示されている比較的複雑なスケジュールを有する。
泡法は、図15に例示されている方法の3次元への一般化である。泡法のこのような変更形態は、多くの丸めの機会を有し、頂部がホームボックスの頂部と同じ高さであるホームボックス上のxおよびy方向に中心を置くs×s×s次元のホームボックスのレンガをインポートする。ホームボックスは、さらに、s×s×sの周期性を持つホームボックスの泡もインポートする。泡の底部は、ホームボックスの底部と同じ高さであり、泡はこのレンガに当てて丸められ、半球構造を形成する。(低並列度限界では、レンガも丸めることが可能であるが、この方法は、その限界については競合しない。)漸近的には、この方法のインポート体積は、
図34および35は、並列化パラメータの範囲にわたって上述の多くの方法のインポート体積をまとめたものである。立方体ホームボックスについては、ES法はαR<0.8の場合にこれらの方法のうちで最もよい。NT法は、0.8<αR<2.7の範囲内で最良である。SNT法は、2.7<αR<〜14の範囲内で最良である。それを超えると、泡法は次第に競合するようになる。これらの遷移は、並列化に使用されるプロセッサの数に関係しうる。例えば、N=25,000個の原子およびR=12{A}とした分子力学シミュレーションを考える。生体系は、おおよそD=0.1/{A}3の原子密度を有する。立方体ホームボックスが使用されており、それぞれの原子は、単一の粒子により表されると仮定すると、並列化パラメータは、これらのパラメータで
。2,800個を超えるプロセッサがある場合(例えば、BlueGeneまたはQCDOCなどでの超並列ハードウェアの範囲内)、間隔が2のSNT法で始まる、より巧妙な方法が好ましい。泡法は、極端な50万プロセッサ・レベルにおいて好ましいものとなり始める。
上の説明では、対毎の相互作用を計算するという背景状況において、さまざまなアプローチが説明されている。これらのアプローチは、さらに、2つよりも多い粒子からなる集合の間の相互作用を計算することに適用することが可能である。例えば、分子中の原子間の力は、これらのアプローチを使用して構成される。マルチ・ゾーン・アプローチでは、例えば、ES法を使用することで、2つよりも多いゾーンの特定の組合せをスケジューリングして、そのような複数の粒子相互作用を構成することができる。
ある。他のオプションとして、中間点に対し効率的近似を使用する方法がある。2つのこのような近似は、以下の通りである。
1.座標次元のそれぞれについて、中間点の座標を粒子の座標の算術平均として近似する。
2.座標次元のそれぞれについて、中間点の座標を粒子の座標の幾何平均として近似する。
上述のアルゴリズム技術のうちの1つまたは複数を含む、粒子相互作用を計算する1アプローチでは、シリアル化されたソフトウェア実装を使用する。このような実装では、処理ノードは、シリアル化の方法でホームボックスに対する計算を実行する。例えば、それぞれのホームボックスについて、ゾーンのそれぞれの対に含まれる粒子の対の間の相互作用がプロセッサにより計算されるマルチ・ゾーン法が実装される。このようなシリアル化実装の一バージョンでは、単一の処理ノードがシリアル化の方法ですべてのホームボックスに対するすべての計算を実行する。他のバージョンでは、複数の処理ノードの集合のうちの単一の処理ノードが、例えば、空間の1領域(例えば、立方体)を一緒に定義するホームボックスの集合に関わる。処理ノードは、少なくとも一部の共通メモリを共有する多数のプロセッサを備えていてもよい。例えば、1つのノードにある複数のプロセッサのそれぞれが、プライベート・キャッシュ・メモリを備え、全体としてノードのローカルにある共有メモリにアクセスすることができる。例えば、処理ノード間で共有される他のレベルのメモリもありえるが、それは以下の説明には直接的に重要であるわけではない。
グローバル・メモリにアクセスすることなく計算される。
−タワー、ホームボックス−yin、タワー−yin、タワー−yangのように相互作用する。内側ループでは、キャッシュ・ブロックの充填を利用して、これらの相互作用を2つの複合相互作用、ホームボックス−(ホームボックス、タワー、yin)およびタワー−(yin、yang)にマージする。さらに、ホームボックス−ホームボックス相互作用からの冗長な対が考慮されないように内側ループを設定する。必要な唯一のマッチメーキング基準は、距離のチェックである。
上述のアルゴリズム技術のうちの1つまたは複数を含む、粒子相互作用を計算する他のアプローチでは、クラスタ・アーキテクチャを使用する。このアーキテクチャでは、多数のコンピュータが、通信ネットワーク、例えば、1つまたは複数のGigabit Ethernet(登録商標)セグメントにより結合される。それぞれのコンピュータは、例えば、オペレーティング・システム(例えば、Linux(登録商標))を実行する汎用コンピュータとすることが可能である。
上述のアルゴリズム技術のうちの1つまたは複数を含むことができる、粒子相互作用を計算する他のアプローチでは、粒子相互作用を計算するために必要なさまざまな計算に特に適している専用ハードウェアを使用する。専用ハードウェアは、複数の処理ノードを含む並列アーキテクチャで配列され、それぞれの処理ノードは1つのホームボックスに関連付けられている計算を受け持つ。このアーキテクチャでは、ノード間通信が可能である。ノードの一配列は、3次元アレイであり、それぞれのノードは3本の直交軸にそってその6つの隣接要素と直接通信し、粒子データの通信は、複数のノードを通してデータを受け渡し宛先に届くようにすることを伴うことができる。
リンクは、リング・ステーションを、メモリ3954にアクセスするためのメモリ・コントローラ3950、および例えば、計算要素上で実行すべきロード・プログラムなどの管理機能に使用されるホスト・インターフェイス3940に結合する。
状により決定される。通信システムのリング・ステーションは、粒子データの送信元プロセッサが、粒子データを通らなければならない、またはデータのコピーが作成されるべき通信相互接続を監視していなくても済むように構成される。むしろ、送信元プロセッサは、タグとして、データの種類に対応するグループidをデータに付加し、通信システムは、そのデータを、通信システムの構成に応じてデータをインポートする必要のあるすべてのプロセッサに分配する。
および柔軟なサブシステムにより生成される結合項および補正の高帯域幅累算用に設計されている。特定のノードのメモリ・サブシステムは、そのノードの所有する粒子に対する力データを累算することを受け持つ。
図41を参照し、単一の粒子−粒子相互作用モジュール(PPIM)4100を考えることにより、ミッドレンジ・サブシステムの動作を理解することができる。一般に、粒子間の相互作用を計算するため、反復毎に、反復の始めに、粒子の1つの集合に対する粒子データを最初にPPIM内のメモリにロードする。次いで、他の集合内の粒子はPPIMを超えてストリーミングされ、ストリーミングされる粒子に力の寄与分をもたらす。反復の終わりに、PPIMに入っていた粒子に対する力の寄与分がストリーミング出力される
。
決定するためにパラメータ付き解析関数が使用される。データ構造体に、引数値の対応する異なる範囲に対する解析関数のパラメータを格納する。引数値の範囲の異なるサイズが解析関数の異なるパラメータに対応しうるように、可変精度アプローチが使用され、例えば、引数値のある範囲の方が、他の範囲よりも、高い精度または正確さが得られる。係数の選択は、2つの段階に分けて実行される。第1に、引数範囲は、N個の粗範囲に分けられ、それぞれ異なるサイズを取ることができる。それぞれの粗範囲は、同じ数n個の部分範囲に分けられ、それぞれの粗範囲内で、部分範囲は同じサイズを持つ。特定の入力引数について、まず最初に、粗範囲が決定され、次いで、解析関数の適切なパラメータを調べるためにその粗範囲内の部分範囲が決定される。したがって、係数の集合はN×n個ある。使用可能な係数の集合が限定された個数だけあるとすると、理想関数に対する関数の正確さは、引数範囲に従って選択されうる。 このような理想関数の1実施例は、ercf(1/R)であり、解析関数の1実施例は、2次関数である。
Wパイプライン化ALUを備え、内(「ドット」)積の計算を含む「幾何学的」プリミティブを含む。それぞれのGCは、レジスタがインターリーブ方式でn個のベクトル・レジスタとして、または4n個のスカラー・レジスタとしてアドレス指定可能なベクトル/スカラー・レジスタ・アーキテクチャを使用しており、スカラーの結果は、後の計算に必要な場合のためにレジスタの一部に直接入れることができる。GC用にプロセッサから供給される受け入れキューがあり、GCからの出力は、プロセッサによる処理がなくてもメモリ・システムにフィードバックすることが可能である。
上述のアルゴリズム技術、またはハードウェアもしくはソフトウェア技術は、さまざまな用途に適用可能であり、そのうち一部は、生体分子シミュレーションに関係し、他はそうではない。応用例としては、例えば以下のものがある。
代替えとして、分散処理のさまざまな配列形態が上述の計算分解とともに使用される。
処理ノードとホームボックスとの間に一対一対応関係がある必要もない。例えば、それぞれのノードは、n×n×nの立方体のホームボックスなどの、ホームボックスの集合に関与しうる。ホームボックスのそのようなより細かな定義の用途の1つは、マルチ・ゾーン・スケジュール・アプローチであり、ゾーン間相互作用のスケジュールを使用することで重複計算の検査の必要をなくしたり、改善された丸めを通じて通信量を低減したりすることが可能である。そのようなより細かなホームボックスの他の用途は、相互作用ゾーンのそれぞれの対に関わる計算をシリアル化し、処理ノードのそれぞれにおける、ローカル・キャッシュ・メモリなどのローカル・メモリを有効に利用することである。メモリ利用の態様は、直列実装に関して以下で詳細に記載される、
並列実装の代替えバージョンでは、それぞれのノードは、ホームボックス内に配置されたものよりも多い粒子に対するデータを保持する。「クローン・バッファ」アプローチは、中間点割り当て規則アプローチとともに使用される。特に、それぞれのノードは、ホームボックスの境界を超えて距離R/2だけ伸びる領域から粒子データを格納する。それぞれの計算フェーズの後、拡張された領域内のすべての粒子に対する力がそのノードに送られ、これにより、粒子の新しい位置を冗長に計算することが可能になる。計算フェーズで
は、例えば、中間点割り当て規則または擬似ランダム割り当て規則を使用して、粒子データをさらにインポートすることは必要ないが、その理由は、拡張領域が必要なすべての粒子を含むからである。
尚、国際出願の英文明細書中にJISコードで表記できない箇所があったため、この翻訳文では代替表記を使用した、具体的には、
{A}は、
Claims (12)
- 直列に相互接続された複数の処理モジュールからなるアレイのうちの1つの処理モジュールであって、前記アレイは多体シミュレーションの複数の物体間の相互作用を計算し、前記処理モジュールは第1入力、第1マッチングユニット、第2マッチングユニット、計算ユニット、第1出力、および第2出力を備え、
前記処理モジュール(4100)は、第1データ要素と第2データ要素の間の対毎の計算を実行するように構成され、前記第1データ要素は第1物体に関連付けられ、前記第1物体は第1空間的位置を有し、前記第2データ要素は第2物体に関連付けられ、前記第2物体は第2空間的位置を有し、
前記対毎の計算はそれぞれ、前記第1データ要素と前記第2データ要素とに依存する結果を生成するべく、前記第1データ要素と前記第2データ要素とを用い、
前記第1データ要素は複数のデータ要素の第1集合から得られ、前記第2データ要素は複数のデータ要素の第2集合から得られ、
前記第1集合は、前記処理モジュールの前記第1入力に入力されるとともに前記処理モジュールの前記第1出力から出力される複数のデータ要素からなり、
前記第2集合は、前記第1集合には入らない複数のデータ要素からなり、
前記第1集合は第1サブ集合と第2サブ集合とを含み、
前記第1マッチングユニットは、前記第1サブ集合のための記憶装置に関連付けられ、前記第2マッチングユニットは、前記第2サブ集合のための記憶装置に関連付けられ、前記第1マッチングユニットと前記第2マッチングユニットとのそれぞれは、データ要素対を選択するように構成され、
選択された前記データ要素対は、前記第1データ要素と前記第2データ要素とを含み、前記第1マッチングユニットと前記第2マッチングユニットとのそれぞれは、第1物体と第2物体の空間的位置の分離に基づき、前記第1データ要素と前記第2データ要素とを選択し、
前記第1入力(4110)は、前記第2集合内の一連の前記データ要素を受け取り、受け取られた前記一連のデータ要素は、前記アレイに含まれる他の処理モジュールからのものであり、前記第1入力(4110)は、受け取った前記データ要素を前記第1マッチングユニット(4350)と前記第2マッチングユニットそれぞれに渡すようにこれら前記
第1マッチングユニット(4350)と前記第2マッチングユニットとに結合され、前記第1入力は、受け取った前記一連のデータ要素を前記第1マッチングユニットと前記第2マッチングユニットとに送り、
前記計算ユニット(4344)は、前記分離に基づき選択された前記データ要素対を受け取るために、前記第1マッチングユニット(4350)と前記第2マッチングユニットとに結合され、
前記第2出力(4122)は、前記計算ユニット(4344)によって生成された結果を送出することを特徴とする、処理モジュール。 - 前記第1出力(4112)は、受け取った前記一連のデータ要素を他の処理モジュールに送出する、
請求項1記載の処理モジュール。 - 前記処理モジュールは、
他の処理モジュールにより出力される結果を受け取るための第2入力(4120)と、
前記計算ユニットにより出力される結果と、前記第2入力で受け取った結果とを組み合わせるマージ・ユニットと
を備える、請求項1記載の処理モジュール。 - 前記マージ・ユニットは、前記第1物体以外の複数の物体のそれぞれに関連付けられている計算の結果をマージするための回路を備える、
請求項3記載の処理モジュール。 - 多体シミュレーションの相互作用を計算するための方法であって、前記方法は、
処理モジュールの第1入力において、それぞれ対応する空間的位置に関連付けられているデータ要素の第1集合を受け取る工程と、
前記第1集合を、処理モジュール(4100)のアレイの複数の記憶装置に分配することによって、前記第1集合の互いに異なる部分を前記処理モジュール(4100)にそれぞれ記憶させる工程であって、複数の前記処理モジュール(4100)が直列に相互接続されることによって処理グループが構成される、前記記憶させる工程と、
前記処理モジュールの前記第1入力において、それぞれ対応する空間的位置に関連付けられているデータ要素の第2集合を受け取る工程と、
受け取った前記第2集合を前記処理グループのうちの次の前記処理モジュールに通す工程と、
それぞれ前記処理モジュール(4100)において、データ要素対の計算に用いるべく、受け取った前記データ要素のうちの一部を選択し、前記第1集合からのデータ要素と、前記第2集合からの前記データ要素とを含む前記データ要素対の計算を実行し、前記データ要素対の計算結果は、前記データ要素によって表される物体の相互作用を示し、前記データ要素対の前記計算結果を前記処理グループのうちの次の前記処理モジュールに通す工程と、
複数の前記処理グループからの前記データ要素対の前記計算結果を組合わせる工程と、
組合わせた前記計算結果を前記アレイから出力する工程と
を備え、
前記データ要素の選択は、前記データ要素によって表される物体間の空間的距離に依存することを特徴とする、方法。 - 対毎の前記計算は、物体の対の間の力に関連付けられる、
請求項5記載の方法。 - 方法はさらに、前記処理モジュール毎に、前記処理モジュールの前記記憶装置において
記録された前記第1集合のデータ要素に関連付けられた対毎の計算の結果を蓄積することを含む、
請求項5記載の方法。 - 受け取った前記データ要素は、前記第1集合のデータ要素を受け取る工程中に受け取られたものであり、それぞれ前記データ要素は対応する空間的位置に関連付けられ、
受け取った前記データ要素のうちの一部を選択することは、対毎の計算を実行するためにデータ要素の複数の対を選択することを含む、
請求項7記載の方法。 - 前記データ要素の複数の対を選択することは、前記データ要素に関連付けられている空間的位置の間の距離間隔に応じて対を選択することを含み、
前記対を選択することは、相互干渉半径よりも小さな距離間隔を有する対を選択することを含む、
請求項5記載の方法。 - 前記データ要素の第1集合をアレイの記憶装置に分配することは、前記処理モジュールのそれぞれにおいて、データ要素を複数のマッチングユニットに分配し、それぞれのマッチングユニットはデータ要素の異なる部分集合を受け取ることを含む、
請求項5記載の方法。 - 前記第1集合を分布することは、それぞれ前記処理モジュールにおいて前記第1集合からの複数のデータ要素を、複数のマッチングユニットに分布することを含み、
それぞれ前記マッチングユニットは、前記第1集合のうちの互いに異なる部分を受け取り、
方法はさらに、対毎の計算の実行に関して前記処理モジュールを通過する複数のデータ要素のうちの全部ではなく一部を選択することを含む、
請求項5記載の方法。 - 方法はさらに、複数の前記処理モジュールのうちの少なくともいくつかの処理モジュールのそれぞれにおいて、
前記マッチングユニットの出力を組み合わせることと、
この組み合わせた出力を計算ユニットに渡して対毎の計算を実行することと
を含む、請求項11記載の方法。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US67271705P | 2005-04-19 | 2005-04-19 | |
US70918405P | 2005-08-18 | 2005-08-18 | |
US60/709,184 | 2005-08-18 | ||
US75644806P | 2006-01-04 | 2006-01-04 | |
US60/756,448 | 2006-01-04 | ||
USPCT/US2006/014782 | 2006-04-19 | ||
PCT/US2006/014782 WO2006113825A1 (en) | 2005-04-19 | 2006-04-19 | Scalable method for the evaluation of distance-limited pairwise particle interactions |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008527193A Division JP2009505299A (ja) | 2005-08-18 | 2006-08-18 | 粒子相互作用を計算するための並行計算アーキテクチャ |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014076105A Division JP2014170556A (ja) | 2005-08-18 | 2014-04-02 | 粒子相互作用を計算するための並行計算アーキテクチャ |
JP2016185526A Division JP6251790B2 (ja) | 2005-08-18 | 2016-09-23 | 粒子相互作用を計算するための並行計算アーキテクチャ |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2012119008A JP2012119008A (ja) | 2012-06-21 |
JP2012119008A5 JP2012119008A5 (ja) | 2013-04-18 |
JP6047288B2 true JP6047288B2 (ja) | 2016-12-21 |
Family
ID=36685709
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008507847A Active JP5271699B2 (ja) | 2005-04-19 | 2006-04-19 | 粒子の相互作用の計算のためのゾーン法 |
JP2012015530A Active JP6047288B2 (ja) | 2005-04-19 | 2012-01-27 | 粒子相互作用を計算するための並行計算アーキテクチャ |
JP2013058442A Active JP5592523B2 (ja) | 2005-04-19 | 2013-03-21 | 多数の物体の相互作用を計算する計算ユニットを決定するための方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008507847A Active JP5271699B2 (ja) | 2005-04-19 | 2006-04-19 | 粒子の相互作用の計算のためのゾーン法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013058442A Active JP5592523B2 (ja) | 2005-04-19 | 2013-03-21 | 多数の物体の相互作用を計算する計算ユニットを決定するための方法 |
Country Status (4)
Country | Link |
---|---|
US (4) | US8126956B2 (ja) |
EP (2) | EP1880327B1 (ja) |
JP (3) | JP5271699B2 (ja) |
WO (1) | WO2006113825A1 (ja) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007022469A2 (en) | 2005-08-18 | 2007-02-22 | D.E. Shaw Research, Llc | Parallel computer architecture for computation of particle interactions |
EP1880327B1 (en) * | 2005-04-19 | 2021-09-08 | D.E. Shaw Research, LLC | Computational load-balancing method in the evaluation of distance-limited particle interactions |
US20070097970A1 (en) * | 2005-11-01 | 2007-05-03 | Georgios Margaritis | Packet retransmitter |
US7769573B2 (en) * | 2006-05-26 | 2010-08-03 | Zymeworks Inc. | System and method for modeling interactions |
WO2008118789A2 (en) * | 2007-03-23 | 2008-10-02 | D. E. Shaw Research, Llc | Computation of multiple body interactions |
US8223155B2 (en) * | 2007-04-27 | 2012-07-17 | Sony Corporation | Method for simulating large numbers of spherical bodies interacting |
US8203560B2 (en) * | 2007-04-27 | 2012-06-19 | Sony Corporation | Method for predictively splitting procedurally generated particle data into screen-space boxes |
US8279227B2 (en) * | 2008-04-04 | 2012-10-02 | Sony Corporation | Method for detecting collisions among large numbers of particles |
JP5417865B2 (ja) * | 2009-01-28 | 2014-02-19 | 富士ゼロックス株式会社 | 粒子挙動解析装置およびプログラム |
US8600708B1 (en) | 2009-06-01 | 2013-12-03 | Paradigm Sciences Ltd. | Systems and processes for building multiple equiprobable coherent geometrical models of the subsurface |
US8711140B1 (en) * | 2009-06-01 | 2014-04-29 | Paradigm Sciences Ltd. | Systems and methods for building axes, co-axes and paleo-geographic coordinates related to a stratified geological volume |
US9418182B2 (en) | 2009-06-01 | 2016-08-16 | Paradigm Sciences Ltd. | Systems and methods for building axes, co-axes and paleo-geographic coordinates related to a stratified geological volume |
US8599804B2 (en) * | 2009-08-07 | 2013-12-03 | Broadcom Corporation | Distributed signal field for communications within multiple user, multiple access, and/or MIMO wireless communications |
US8743115B1 (en) | 2009-10-23 | 2014-06-03 | Paradigm Sciences Ltd. | Systems and methods for coordinated editing of seismic data in dual model |
US9098944B2 (en) * | 2010-03-04 | 2015-08-04 | Pixar | Scale separation in hair dynamics |
US20110310088A1 (en) * | 2010-06-17 | 2011-12-22 | Microsoft Corporation | Personalized navigation through virtual 3d environments |
US20120150496A1 (en) * | 2010-12-09 | 2012-06-14 | Jiun-Der Yu | Simplified Fast 3D Finite Difference Particulate Flow Algorithms for Liquid Toner Mobility Simulations |
JP5645120B2 (ja) * | 2010-12-17 | 2014-12-24 | 独立行政法人海洋研究開発機構 | 粒子状態計算装置及び粒子状態計算方法 |
JP5807420B2 (ja) * | 2011-07-19 | 2015-11-10 | 株式会社Jvcケンウッド | 映像ノイズ低減装置及び映像ノイズ低減方法 |
US10795053B2 (en) | 2013-10-29 | 2020-10-06 | Emerson Paradigm Holding Llc | Systems and methods of multi-scale meshing for geologic time modeling |
WO2015066415A1 (en) * | 2013-11-01 | 2015-05-07 | University Of Florida Research Foundation, Inc. | Movable type method applied to protein-ligand binding |
JP6261130B2 (ja) * | 2014-06-04 | 2018-01-17 | 国立研究開発法人海洋研究開発機構 | 粒子シミュレーション装置、粒子シミュレーション方法及び粒子シミュレーションプログラム |
EP3218833A2 (en) | 2014-11-14 | 2017-09-20 | D.E. Shaw Research, LLC | Suppressing interaction between bonded particles |
US9690002B2 (en) | 2015-06-18 | 2017-06-27 | Paradigm Sciences Ltd. | Device, system and method for geological-time refinement |
US10466388B2 (en) | 2016-09-07 | 2019-11-05 | Emerson Paradigm Holding Llc | System and method for editing geological models by switching between volume-based models and surface-based structural models augmented with stratigraphic fiber bundles |
CN106788092B (zh) * | 2017-02-28 | 2019-03-05 | 南京工程学院 | 一种基于原子分解法的同步电机参数辨识方法 |
US10520644B1 (en) | 2019-01-10 | 2019-12-31 | Emerson Paradigm Holding Llc | Imaging a subsurface geological model at a past intermediate restoration time |
US11156744B2 (en) | 2019-01-10 | 2021-10-26 | Emerson Paradigm Holding Llc | Imaging a subsurface geological model at a past intermediate restoration time |
US20230237061A1 (en) * | 2020-06-19 | 2023-07-27 | Commonwealth Scientific And Industrial Research Organisation | Data model for mining |
JP7408533B2 (ja) | 2020-12-09 | 2024-01-05 | 株式会社東芝 | 情報処理装置、情報処理方法およびプログラム |
WO2022198026A2 (en) * | 2021-03-19 | 2022-09-22 | D. E. Shaw Research, Llc | Multibody simulation |
CN113806994B (zh) * | 2021-09-23 | 2022-12-20 | 盐城师范学院 | 一种活性粒子时空分布监测方法及系统 |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02249083A (ja) * | 1989-03-22 | 1990-10-04 | Fujitsu Ltd | アレイプロセッサによる粒子シミュレーション方式 |
JPH03204758A (ja) * | 1990-01-06 | 1991-09-06 | Fujitsu Ltd | 粒子運動シミュレーション処理方式 |
US5377129A (en) * | 1990-07-12 | 1994-12-27 | Massachusetts Institute Of Technology | Particle interaction processing system |
JPH0477853A (ja) * | 1990-07-13 | 1992-03-11 | Fujitsu Ltd | 粒子運動シミュレーション方式 |
JP2976675B2 (ja) | 1992-02-21 | 1999-11-10 | 日本電気株式会社 | アレイプロセッサのルーティング方法 |
JPH05274277A (ja) * | 1992-03-30 | 1993-10-22 | Toshiba Corp | 分子動力学計算装置 |
JPH05324581A (ja) * | 1992-05-22 | 1993-12-07 | Hitachi Ltd | 並列多体問題シミュレータ及び当該シミュレータにおける負荷分散方法 |
JPH07140289A (ja) | 1993-11-17 | 1995-06-02 | Toshiba Corp | 中性子輸送シミュレータ |
AU1058197A (en) | 1995-11-21 | 1997-06-11 | Trustees Of Columbia University In The City Of New York, The | Fast methods for simulating biomolecular systems with long-range electrostatic interactions by molecular dynamics |
FR2742560B1 (fr) | 1995-12-19 | 1998-01-16 | Commissariat Energie Atomique | Architecture de systeme en tableau de processeurs a structures paralleles multiples |
US6407748B1 (en) | 1998-04-17 | 2002-06-18 | Sandia Corporation | Method and apparatus for modeling interactions |
US6373849B1 (en) * | 1998-06-08 | 2002-04-16 | Excel Switching Corporation | Resource interface unit for telecommunications switching node |
US6678642B1 (en) | 1998-10-08 | 2004-01-13 | Sandia Corporation | Method of and apparatus for modeling interactions |
US6373489B1 (en) | 1999-01-12 | 2002-04-16 | Schlumberger Technology Corporation | Scalable visualization for interactive geometry modeling |
US6600788B1 (en) | 1999-09-10 | 2003-07-29 | Xilinx, Inc. | Narrow-band filter including sigma-delta modulator implemented in a programmable logic device |
US7177867B2 (en) * | 2000-10-23 | 2007-02-13 | Sri International | Method and apparatus for providing scalable resource discovery |
US7096167B2 (en) | 2001-04-26 | 2006-08-22 | International Business Machines Corporation | System and method for molecular dynamic simulation |
JP3832431B2 (ja) * | 2002-12-25 | 2006-10-11 | ソニー株式会社 | 画像処理装置 |
US20040225711A1 (en) * | 2003-05-08 | 2004-11-11 | Spotware Technologies, Inc. | System for administering computers on a computing grid |
US7734456B2 (en) * | 2004-03-30 | 2010-06-08 | Osamu Fujita | Method and apparatus for priority based data processing |
EP1880327B1 (en) * | 2005-04-19 | 2021-09-08 | D.E. Shaw Research, LLC | Computational load-balancing method in the evaluation of distance-limited particle interactions |
US7610184B1 (en) * | 2006-01-23 | 2009-10-27 | Itt Manufacturing Enterprises, Inc. | Sector meshing and neighbor searching for object interaction simulation |
US20070233440A1 (en) * | 2006-03-29 | 2007-10-04 | International Business Machines Corporation | Reduced message count for interaction decomposition of N-body simulations |
US7769573B2 (en) | 2006-05-26 | 2010-08-03 | Zymeworks Inc. | System and method for modeling interactions |
-
2006
- 2006-04-19 EP EP06758413.6A patent/EP1880327B1/en active Active
- 2006-04-19 WO PCT/US2006/014782 patent/WO2006113825A1/en active Application Filing
- 2006-04-19 JP JP2008507847A patent/JP5271699B2/ja active Active
- 2006-04-19 EP EP11176182.1A patent/EP2447852A3/en not_active Ceased
-
2007
- 2007-10-19 US US11/975,694 patent/US8126956B2/en active Active
-
2011
- 2011-12-19 US US13/329,852 patent/US10824422B2/en active Active
-
2012
- 2012-01-27 JP JP2012015530A patent/JP6047288B2/ja active Active
- 2012-11-19 US US13/680,962 patent/US9747099B2/en active Active
-
2013
- 2013-02-01 US US13/756,998 patent/US9612832B2/en active Active
- 2013-03-21 JP JP2013058442A patent/JP5592523B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
US9612832B2 (en) | 2017-04-04 |
EP2447852A3 (en) | 2015-01-07 |
WO2006113825A1 (en) | 2006-10-26 |
EP2447852A2 (en) | 2012-05-02 |
US8126956B2 (en) | 2012-02-28 |
JP2012119008A (ja) | 2012-06-21 |
JP5592523B2 (ja) | 2014-09-17 |
US20080243452A1 (en) | 2008-10-02 |
US20130173889A1 (en) | 2013-07-04 |
JP5271699B2 (ja) | 2013-08-21 |
JP2008538441A (ja) | 2008-10-23 |
US10824422B2 (en) | 2020-11-03 |
US20120116737A1 (en) | 2012-05-10 |
JP2013168160A (ja) | 2013-08-29 |
US9747099B2 (en) | 2017-08-29 |
US20130091341A1 (en) | 2013-04-11 |
EP1880327B1 (en) | 2021-09-08 |
EP1880327A1 (en) | 2008-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6047288B2 (ja) | 粒子相互作用を計算するための並行計算アーキテクチャ | |
Dryden et al. | Improving strong-scaling of CNN training by exploiting finer-grained parallelism | |
WO2008118789A2 (en) | Computation of multiple body interactions | |
JP2009505299A (ja) | 粒子相互作用を計算するための並行計算アーキテクチャ | |
Zhang et al. | Implementation of parallel genetic algorithm based on CUDA | |
JP6251790B2 (ja) | 粒子相互作用を計算するための並行計算アーキテクチャ | |
Koanantakool et al. | A computation-and communication-optimal parallel direct 3-body algorithm | |
Nuttall | Parallel implementation and application of the random finite element method | |
Stone et al. | GPU Algorithms for Molecular Modeling. | |
Ocetkiewicz et al. | Multi-GPU UNRES for scalable coarse-grained simulations of very large protein systems | |
Page | Scalability of irregular problems | |
Bylaska et al. | Performance evaluation of NWChem ab-initio molecular dynamics (AIMD) simulations on the Intel® xeon Phi™ processor | |
Athanasaki et al. | Hyperplane grouping and pipelined schedules: How to execute tiled loops fast on clusters of SMPs | |
Kohnke | GPU fast multipole method with lambda-dynamics features | |
Lingg | Novel Parallel Algorithms and Performance Optimization Techniques for the Multi-Level Fast Multipole Algorithm | |
Namugwanya | An MPI-based 2D data redistribution library for dense arrays | |
Rushaidat | Efficient algorithms and optimizations for scientific computing on many-core processors | |
Stevens | GPU-optimized graph theory analysis of allosteric protein signaling networks | |
Hu | Efficient data-parallel implementations of highly irregular problems | |
Succi et al. | A six lecture primer on parallel computing | |
Abraham | Efficient load balancing strategies on a network of computers: a case study with two scientific computing problems | |
Edelman et al. | 6: 50s A Peek at Parallel Processing from an Applications Perspective | |
Fang | High scalable implementation of SPME using parallel spherical cutoff three-dimensional FFT on the six-dimensional torus QCDOC supercomputer | |
Kristensen | Towards Parallel Execution of Sequential Scientific Applications | |
Edelman | 18.337 J/6.338 J Applied Parallel Computing (SMA 5505), Spring 2005 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20131203 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140107 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20140228 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20140305 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140402 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20140507 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140905 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20140916 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140924 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20141128 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20160308 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160527 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160530 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160923 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161121 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6047288 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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |