JP2019145104A - 共有メモリセグメントを用いて物理的及び/または化学的現象を予測するためのシステム及び方法 - Google Patents

共有メモリセグメントを用いて物理的及び/または化学的現象を予測するためのシステム及び方法 Download PDF

Info

Publication number
JP2019145104A
JP2019145104A JP2019027589A JP2019027589A JP2019145104A JP 2019145104 A JP2019145104 A JP 2019145104A JP 2019027589 A JP2019027589 A JP 2019027589A JP 2019027589 A JP2019027589 A JP 2019027589A JP 2019145104 A JP2019145104 A JP 2019145104A
Authority
JP
Japan
Prior art keywords
physical
chemical
phenomenon
core
processor
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.)
Pending
Application number
JP2019027589A
Other languages
English (en)
Inventor
ボーボッド ジュリアン
Bohbot Julien
ボーボッド ジュリアン
ジレ ニコラス
Gillet Nicolas
ジレ ニコラス
ベルギー アンソニー
Velghe Anthony
ベルギー アンソニー
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.)
IFP Energies Nouvelles IFPEN
Original Assignee
IFP Energies Nouvelles IFPEN
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
Application filed by IFP Energies Nouvelles IFPEN filed Critical IFP Energies Nouvelles IFPEN
Publication of JP2019145104A publication Critical patent/JP2019145104A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/167Interprocessor communication using a common memory, e.g. mailbox
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Multi Processors (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】複数のプロセッサで物理的及び/または化学的現象をシミュレーティングするためのシステム及び方法を提供する。【解決手段】複数のプロセッサ3は、それぞれ複数のコンピューティングコア4を備える。システムは、複数のメモリセグメント6を含むランダムアクセスメモリ5をさらに含む。システム及び方法は、全てのコア4間で「共有される」単一のランダムアクセスメモリセグメント7に格納された数値データのテーブル2の利用に基づくものである。【選択図】図2

Description

本発明は、物理的/化学的現象を予測するためのコンピュータシステム及び方法の分野に関し、特に内燃機関を備える車両の燃焼及び汚染物質の排出量を予測するためのコンピュータシステム及び方法に関する。
燃料消費量及び汚染物質の排出量に対する経済面及び環境面の制限によって、自動車メーカーはますます厳しい制約を受けている。例えば、車両の汚染物質の排出量(CO、NO、煤、微粒子、未燃炭化水素)に関する最大限度を設定した欧州排出量の基準はますます厳しくなっている。そのため、各メーカーは、汚染物質の排出量を最小限に抑制することを目的として車両の最適化に努めている。したがって、エンジンの挙動を予測する場合に、時間がかかる多数の実験的測定を実施することがない、汚染物質の排出シミュレーションがますます利用されるようになってきている。
車両の汚染物質の排出量を予測するために、FPI(flame prolongation of intrinsic low-dimensional manifold)化学キネティクスタビュレーション法(chemical kinetics tabulation method)またはADF−PCM(approximated diffusion flame-presumed conditional moment)燃焼モデルによって燃焼チャンバ内の酸化後のフェーズ(すなわち、拡散火炎によるガスの酸化)がシミュレートされることがある。この種のモデルで使用される数値データのテーブルは、化学キネティクスを解くためのコンピュータコード、例えばReaction Designによって開発されたCheminTMソフトウェア、またはIFP Energies Nouvellesによって開発されたIFP−KineticsTMに基づいて、あるいはPCM法のための炎の構造に関するフレームレット計算(flamelet calculations)によって生成されることがある。このタビュレーションでは、所与の反応スキーム及び熱力学条件に従って反応中に存在する全ての化学化合物に関するモル量が列挙される。その次に、これらのテーブルは、コンピュータプログラム、例えばCFD(数値流体力学)プログラム、具体的にはIFP Energies Nouvellesによって開発されたIFP−C3D(登録商標)ソフトウェアを利用する汚染物質の排出量の計算で用いられる。
しかしながら、これらのタビュレーション法に関連するいくつかの欠点に注意すべきである。熱力学的経路及び物理的化学的プロセスのセットを考慮するために、追加の入出力変数をテーブルに入力しなければならない。このパラメータ数が増えることは、物理−化学テーブルのサイズが大きくなり、モデルがMPI(message-passing interface)パラダイムを用いる並列ソルバーに実装されると、物理−化学テーブルのサイズが急速にコンピュータのメモリ容量に適合しなくなることがある。この分散メモリパラダイムを用いると、プロセス間のメッセージの送受信を中心として通信が構築される。各プロセスに関するメモリゾーンは、共有されておらず、ランダムアクセスメモリRAM内にセグメント化される。物理−化学テーブルは、サイズが大きく、数ギガバイトに相当する場合がある。例えば、PCMモデル用に生成されるテーブルは、3.5GBを超えるデータに相当する。
図1は、従来技術による、そのような動作を概略的に示している。コンピュータシステム1は、複数(ここでは4つ)のプロセッサ3とランダムアクセスメモリ5とを含む。各プロセッサ3は、マルチコアプロセッサであり、図で示された例によれば、各プロセッサ3は、4つのコンピューティングコア4を含む。ランダムアクセスメモリ5は、複数のメモリセグメント6(図で示されたケースでは16のセグメント)を含む。用語「セグメント」は、ランダムアクセスメモリのメモリゾーンを示す(直線の矢印)。この構成では、ランダムアクセスメモリの各セグメント6にテーブル2が割り当てられている。各プロセッサ3のコア4は、計算を並列に実行するように構成されている。このことを実現するため、各コア4は、テーブル2に格納されたデータを上記コアに固有のセグメント6から読み出す。
図1における動作では、テーブルは各並列プロセスの各セグメントに割り当てられている。そのため、コンピュータシステムは、大容量のランダムアクセスメモリが必要であり、このランダムアクセスメモリを多用する必要がある。集約コンピューティングに関するコンピュータの予測成長では、このストレージ問題を解決することができないことに留意されたい。特に、コンピュータの成長に関する各メーカーの見積もりでは、コンピューティングノード当たりのプロセッサ数の増大が比較的小さくなると共に、プロセッサ当たりのメモリ量が少ないコンピューティングコア数が増える傾向にある。この種のアーキテクチャは、将来のコンピュータの電力消費量を低減するために推奨されている。
現在、タビュレーション法を用いる並列シミュレーションでは、各プロセスがテーブル全体をメモリにロードしている。例えば、8つのコンピューティングコアを含むプロセッサから成るノードのシミュレーションでは、テーブルの読み出しに関連して数ギガバイト(例えば、3.5GB)のデータから成る8つのデータテーブル(プロセス)がロードされる。このメモリの過負荷は、シミュレーションの過程で割り当てられるメッシュ及び他のテーブルをロードするための残りのメモリ量を大幅に制限する。
物理的及び/または化学的現象のシミュレーションを伴う他の分野、具体的には複合流体反応流(complex-fluid reactive flow)シミュレーションの分野(原子力産業、エネルギープロセス等)において、同様の問題が生じる場合がある。
この問題を解消するため、本発明は全ての並列コア間で「共有される」単一のランダムアクセスメモリセグメントを用いてメモリ消費量を大幅に低減することを可能にする予測(シミュレーション)方法及びシステムに関する。
本発明は、物理的及び/または化学的現象を予測するためのコンピュータシステムであって、並列コンピューティングのための複数のマルチコアプロセッサと、複数のメモリセグメントを含むランダムアクセスメモリとを有し、前記物理的及び/または化学的現象の前記予測が、数値データが格納される少なくとも1つのテーブルに基づいて実行される計算によって行われるコンピュータシステムに関する。前記ランダムアクセスメモリは、前記テーブルが格納された単一の共有セグメントを有し、各プロセッサの各コアは、前記物理的及び/または化学的現象を予測する前記計算を実行するために前記テーブルを読み出すよう、前記共有セグメントと通信するように構成されている。
前記物理的及び/または化学的現象は、内燃機関を備える車両の燃焼及び汚染物質の排出現象であることが有利である。
一実施形態によれば、前記テーブルは、化学キネティクスコード及び/または炎の構造に関するフレームレット計算に基づいて生成される。
一実装形態によれば、各プロセッサの各コアは、前記共有セグメントの前記テーブルを、メッセージパッシングインターフェースMPIを用いて読み出すように構成されている。
前記システムは、前記プロセッサ間及び/または前記プロセッサの前記コア間の前記計算を並列化するための手段を有することが有利である。
一態様によれば、前記プロセッサは、前記物理的及び/または化学的現象を予測するために数値流体力学コードを実行するように構成されている。
さらに、本発明は、上記の特徴のうちの1つのコンピュータシステム、並びに前記物理的及び/または化学的現象を予測するために使用されるデータを記憶する数値データのテーブルを用いて物理的及び/または化学的現象を予測する方法に関する。この方法では、以下のステップが実行される。
a)前記テーブルが、前記ランダムアクセスメモリの単一の共有セグメントに割り当てられ、
b)前記物理的及び/または化学的現象が、前記テーブルを用いて前記システムの前記複数のプロセッサの複数のコアで物理的計算及び/または化学的計算を実行することで予測され、各コアが前記テーブルを読み出すように前記共有セグメントと通信する。
前記物理的及び/または化学的現象は、内燃機関を備える車両の燃焼及び汚染物質の排出現象であることが有利である。
一実施形態によれば、前記方法は、化学キネティクスコード及び/または炎の構造に関するフレームレット計算コードに基づいて前記テーブルを生成する先行ステップを含む。
一実装形態によれば、前記共有セグメントに識別子が割り当てられ、前記識別子が前記プロセッサの前記コアに送信され、前記プロセッサから前記共有セグメントへのポインタが前記識別子を用いて設定される。
一態様によれば、前記物理的及び/または化学的現象を予測するために前記プロセッサの前記コアで流体力学計算が実行される。
前記物理的及び/または化学的計算は、前記プロセッサ間及び/または前記プロセッサの前記コア間で並列に実行されることが有利である。
前記各コアは、MPI関数を用いて前記共有セグメントの前記テーブルを読み出すことが好ましい。
本発明による方法の他の特徴並びに利点は、非限定的な例として与えられる後述する実施形態の説明を添付の図面と併せて読むことで明らかになるであろう。
上述した従来技術によるコンピュータシステムを示す図である。 本発明の一実施形態によるコンピュータシステムを示す図である。 従来技術のシステムを用いる例で使用されるメモリを示すヒストグラムである。 本発明の一実施形態によるコンピュータシステムを用いる、図3と同じ例で使用するメモリを示すヒストグラムである。
本発明は、物理的及び/または化学的現象を予測(シミュレート)するためのコンピュータシステムに関する。この予測(シミュレーション)は、マルチコアプロセッサで実行される計算によって行われる。さらに、この予測は、データを格納するためのランダムアクセスメモリ(RAM)を用いる。これらの計算は、数値データを格納する少なくとも1つのテーブルを利用する。
本発明において定義されるコンピュータシステムは、コンピューティングノードとも呼ばれる。コンピュータシステムは、スーパーコンピュータのコンピューティングノード、すなわちスーパーコンピュータの一部であってもよい。したがって、本発明によるコンピュータシステムのアセンブリによってスーパーコンピュータが形成されてもよい。
マルチコアプロセッサは、同時に動作する複数の物理的コンピューティングコアで処理するプロセッサである。マルチコアプロセッサは、単一のプロセッサが複数の同時コンピューティング回路を制御する旧来のアーキテクチャとは異なる。
物理的コンピューティングコアは、プログラムを自律的に実行することができる回路のセットである。プログラムカウンタ、レジスタ、コンピューティングユニット等、プログラムを実行するのに必要な機能の全てがこれらのコアに存在する。さらに、複数のキャッシュが、プロセッサ毎に定義されるか、または各プロセッサ間で共有される。
ランダムアクセスメモリは、コンピュータで処理された情報が格納可能であり、その後、該情報を消去できるコンピュータメモリである。ランダムアクセスメモリは、メモリセグメントと呼ばれる複数のストレージゾーンを含む。いくつかの既存の構成によれば、図1で示されているように、単一のメモリセグメントが単一のプロセッサコアと関連付けられていてもよい。
テーブルは、数値データをグループ分けするマトリクスである。これらのデータは、先行する計算の結果であってもよい。典型的な一実施形態によれば、先行する計算は、同じプロセッサで実行されていてもよい。
本発明によれば、ランダムアクセスメモリは、数値データのテーブルが格納される単一の共有メモリセグメントを有し、ランダムアクセスメモリの他のセグメントは、数値データのテーブルを格納しない。さらに、各プロセッサの各コアは、物理的及び/または化学的現象を予測する計算を実行するため、数値データのテーブルを読み出すよう共有セグメントと通信するように構成されている。すなわち、ランダムアクセスメモリのメモリセグメントのうちの1つのみが数値データのテーブルを格納するために用いられ、全てのコアは共有メモリセグメント内の数値データのテーブルを読み出す。
本発明は、ソフトウェアプロセスのメモリ消費量を減らすことを可能にして、利用可能なランダムアクセスメモリの容量を増大させることを可能にする。特に、本発明は、ランダムアクセスメモリの使用を単一の共有メモリセグメントに限定しつつ、物理的及び/または化学的現象を予測(シミュレート)することを可能にする。本発明は、ますます大型化する数値データのテーブルに適合することを可能にし、(プロセッサ当たりのメモリの量が少ないコンピューティングコアを有する)電力消費量の少ないプロセッサに適合することを可能にする。さらに、メモリに関するロードをこのように制限することで、シミュレーションの過程において割り当てられたメッシュ及び他のテーブルをロードするためのメモリを解放することができる。
特に、本発明は、分散メモリ並列コンピュータに関する大きいサイズの化学及び/または物理テーブルを使用することに関する。この場合、本発明は、大きいサイズの物理−化学テーブルを使用するとき、マルチコアプロセッサに基づくコンピューティングノードから成るコンピュータに関する並列化されたソフトウェアプロセスで消費されるメモリを低減することを可能にする。
好ましくは、本発明は、内燃機関を備える車両の燃焼及び汚染物質の排出量を予測することに関する。特に、本出願は、流体力学計算を実行するために、(例えば、化学キネティクスを解くためのコンピュータコードに基づいて生成されるテーブル、またはPCM法のための炎の構造に関するフレームレット計算によって生成されるテーブルの場合、数ギガバイトの)大きいサイズのテーブルを用いる。
また一方、本発明は、例えば複合流体反応流(complex-fluid reactive flows)の分野(原子力産業、エネルギープロセス等)における、大きいサイズの化学及び/または物理テーブルの少なくとも一方を必要とする任意の予測(シミュレーション)に適している。
本発明の一実施形態によれば、数値データのテーブルは、Reaction Designによって開発されたChemkinTMソフトウェアまたはIFP Energies Nouvellesによって開発されたIFP−KineticsTM等の化学キネティクスコードに基づいて生成されてもよい。これらのタイプのソフトウェアは、複雑な問題を理解することを目的として化学反応の相当数の組合せを解決することが可能であり、そのことにより、例えば汚染物質の排出量の問題に適している。
その代わりにまたはそれに加えて、PCM法のための炎の構造に関するフレームレット計算に基づいてデータのテーブルが生成されてもよい。
本発明の一実装形態によれば、各プロセッサは、物理的及び/または化学的現象を予測する数値流体力学(CFD)コードを実行するように構成されていてもよい。これらのコードは、特に、化学キネティクスコード及び/またはフレームレット計算コードから得られる数値データのテーブルに基づいて、内燃機関を備える車両の燃焼及び排出をシミュレートすることを可能にする。
IFP Energies Nouvellesによって開発されたIFP−C3D(登録商標)ソフトウェアは、内燃機関における反応二相(気体/液体燃料)流の3次元(3D)シミュレーションに適用されるCFDソフトウェアの一例である。このソフトウェアは、エンジンで生じる複雑な物理的現象(バルブオーバーラップに起因する掃気、壁面での液膜の形成、汚染物質の形成等)を分析することを可能にする。
本発明の一態様によれば、システムは、プロセッサ間及び/またはコア間で計算を並列化するための手段を有していてもよい。このようにして、物理的及び/または化学的現象の計算、従って予測(シミュレーション)が高速化し、それによってプロセッサ及びランダムアクセスメモリが使用される時間を短縮することが可能になる。これらの並列化手段は、メッセージパッシングインターフェースMPIを使用してもよい。
メッセージパッシングインターフェースMPIは、C言語及びFortran言語と共に使用できる関数のライブラリを定義する規格である。メッセージパッシングインターフェースMPIは、メッセージパッシングによってリモートコンピュータまたはマルチプロセッサの使用を可能にする。この技術は、一般的に分散メモリシステム上で並列プログラムを実行するために使用されている。
このMPIは、共有メモリ超並列コンピュータ及び分散メモリ異種コンピュータアセンブリの両方において良好な性能レベルを提供する利点を有する。さらに、MPIは、非常に広範囲のハードウェア及びオペレーティングシステムで利用可能である。したがって、MPIは、ほとんど全てのメモリアーキテクチャに実装されているため、他のメッセージパッシングライブラリに関して広く移植可能であるという利点を有し、かつ実装される各MPIは、それが実行されるハードウェアに最適化されているために高速である。
各プロセッサの各コアは、メッセージパッシングインターフェースMPIによって共有セグメントのテーブルを読み出すように構成されていることが有利である。
図2は、本発明の一実施形態によるコンピュータシステムを概略的にかつ非制限的に示している。図2の表現は図1の表現と類似している。コンピュータシステム1は、複数(ここでは4つ)のプロセッサ3と、ランダムアクセスメモリ5とを含む。各プロセッサ3はマルチコアプロセッサであり、図で示された例によれば、各プロセッサ3は、4つのコア4とキャッシュ9とを含む。ランダムアクセスメモリ5は、複数のセグメント6(この場合は16のセグメント)を含む。用語「セグメント」は、ランダムアクセスメモリのメモリゾーンを示している。この構成では、ランダムアクセスメモリの単一の共有セグメント7にテーブル2が割り当てられている(直線の矢印)。各プロセッサ3のコア4は計算を並列に実行するように構成されている。このことを実現するため、各コア4は共有セグメント7内のテーブル2に格納されたデータを読み出す。各プロセッサ3の各キャッシュ9は、共有セグメント7内のテーブル2を読み出すように構成されたポインタ8を含む。各プロセッサ3内において、各コア4はポインタ8によって共有セグメント7から取り出されたキャッシュ9からデータを読み出す(曲線の矢印)。
また、本発明は、物理的及び/または化学的現象を予測(シミュレート)する方法に関する。この方法は、上述した変形例の任意の組み合わせによるコンピュータシステム(コンピューティングノード)で実行される。さらに、この予測方法は、数値データを格納するテーブルを用いる。
この方法では、以下のステップが実行される。
a)数値データのテーブルがコンピュータシステムのランダムアクセスメモリ5の単一のメモリセグメントに割り当てられ、
b)データのテーブルを用いて、コンピュータシステムの複数のプロセッサの複数のコアで物理的及び/または化学的計算を実行することで、物理的及び/または化学的現象が予測(シミュレート)される。このことを実現するために、各プロセッサの各コアは、数値データのテーブルを読み出すように共有セグメントと通信する。
そのため、本発明による方法は、ランダムアクセスメモリの使用を単一の共有メモリセグメントに限定しつつ、物理的及び/または化学的現象を予測(シミュレート)することを可能にする。
好ましくは、本発明による方法は、内燃機関を備える車両の燃焼及び汚染物質の排出量を予測する(シミュレートする)ことに関する。特に、本出願は、(例えば、化学キネティクスを解くためのコンピュータコードに基づいて生成されるテーブル、またはPCM法のための炎の構造に関するフレームレット計算によって生成されるテーブルの場合は数ギガバイトの)大きいサイズのテーブルを用いて流体力学計算を実行する。
また一方、本発明による方法は、例えば複合流体反応流の分野(原子力産業、エネルギープロセス等)におけるサイズの大きい化学及び/または物理テーブルを必要とする任意の予測(シミュレーション)に適している。
本発明の一実施形態によれば、本方法は、Reaction Designによって開発されたChemkinTMソフトウェアまたはIFP Energies Nouvellesによって開発されたIFP−KineticsTM等の化学キネティクスコードに基づいてデータのテーブルを生成する先行ステップを含んでいてもよい。
その代わりにまたはそれに加えて、本方法は、PCM法のための炎の構造に関するフレームレット計算に基づいてデータテーブルを生成する先行ステップを含んでいてもよい。
本発明の一実装形態によれば、物理的及び/または化学的現象を予測するステップ(b)に関して数値流体力学(CFD)コードが実行されてもよい。これらのコードは、特に内燃機関を備える車両の燃焼及び排出をシミュレートすることを可能にする。
本発明の一態様によれば、物理的及び/または化学的計算は、様々なプロセッサ間及び/または様々なコア間で並列に実行されてもよい。このようにして、物理的及び/または化学的現象の計算、従って予測(シミュレーション)が高速化し、それによってプロセッサ及びランダムアクセスメモリが使用される時間を短縮することが可能になる。これらの並列化は、メッセージパッシングインターフェースMPIを用いて実行されてもよい。
各プロセッサの各コアは、メッセージパッシングインターフェースMPIによって共有セグメント内のテーブルを読み出すように構成されていることが有利である。
本発明の一特徴によれば、本方法は、物理的及び/または化学的現象を予測する、ステップ(b)に先行する以下のステップを含んでいてもよい。
共有セグメントに識別子が割り当てられ、
前記識別子が各プロセッサの各コアに送信され、
プロセッサから(各プロセッサのキャッシュから)共有メモリセグメントへのポインタが、共有セグメントに割り当てられた識別子を用いて設定される。
これらのステップは、「マスター」プロセッサコアと見なされる少なくとも1つのプロセッサコアによって実行されてもよい。
これらのステップは、各プロセッサを共有メモリセグメントと直接的に関連付けることを可能にし、ポインタは、その後、数値データのテーブルを読み出すためにプロセッサコアによって用いられる。
本発明によるシステム及び方法は、任意のタイプのオペレーティングシステム、例えばWindowsTM、UNIXTM及びIOSTMで動作してもよい。
本発明を実施する典型的なアルゴリズム
以下のアルゴリズムは、LINUX OSのコンピューティングコードにおける本発明の一実装形態を非制限的に表している。
シミュレータの並列実行に続いて、各プロセスのメモリ初期化が実行されなければならず、事前に以下のことを行う必要がある。
1−並列プロセスの各々を、プロセスが実行されるコンピューティングコード(コンピュータシステム)と関連付けるために、各プロセスの類似性を算出する。
プロセスのグループ毎に、1つのプロセスが「マスター」プロセスと見なされる(プロセッサコアのうちの1つがメモリアロケーションに関するマスターと見なされる)。
2−同じコンピューティングコード上で実行されるプロセスのグループ毎に、以下のステップが実行される。
グループのマスタープロセスにおいて、
2.1−IDKEYと呼ばれる一意の鍵を用いて認証される、マスタープロセスによって共有メモリセグメントを作成する。
2.2−メモリゾーンを割り当てる(Cメモリアロケーション関数を用いる。この関数はCカーネル内に実装されている)。
2.3−「マスター」プロセスによって、shmmat関数(この関数はCカーネル内に実装されている)を用いて、IDKEYで認証される共有メモリセグメントにメモリゾーンを関連付ける。
2.4−IDKEYの値をグループの全ての他のプロセスと共有する。
各グループの他の非マスタープロセスに関して、
2.5−IDKEY認証鍵をマスターから受信する。
2.6−shmget関数(この関数はCカーネル内に実装されている)を用いて、共有メモリセグメントのアドレスを取り出す。
2.7−共有メモリセグメントを指し示す(割り当てられていない)Cポインタを割り当てる。
3−読み出し/書き込みテーブル
3.1−各グループの各マスタープロセスは、物理−化学テーブルを読み出し、メモリへ格納する。
3.2−各非マスタープロセスは、共有セグメントを指し示すローカルポインタを用いてテーブルから値を読み出す。
比較例
本発明の特徴及び利点は、以下に記載する比較例から明確になるであろう。
表1において、(図1で示されている)従来技術を用いることに対して、本発明で実現されるメモリ削減量は、様々な実際の集約的並列スーパーコンピュータアーキテクチャに従って推定される。表1において、利得係数は、本発明のシステム及び方法で用いられるメモリ消費量(ランダムアクセスメモリの単一の共有セグメントへの数値データのテーブルの割り当て)に対する、従来技術のシステムで用いられるメモリ消費量(ランダムアクセスメモリの各セグメントへのデータのテーブルの割り当て)の割合に対応している。
Figure 2019145104
メモリ消費量の削減は、マシンのアーキテクチャに依存する。本発明のシステム及び方法では、実質的価値のあるメモリ利得係数(16〜128の範囲)が使用可能であることに留意されたい。
また一方、エクサスケールマシンでは、コンピューティングノード当たりのコアの数が、2020年までに256(32のコアを有する8つのプロセッサ)及び1024(128のコアを有する8つのプロセッサ)を超える可能性があり、それは利得係数が大きくなる(それぞれ256及び1024になる)。
図3及び図4は、例えば表1のNo.3(2つの8コアIntel(登録商標)Sandy Bridgeプロセッサを有するコンピューティングノード)において、3.2GBのテーブルで使用されるメモリを示している。図3は、従来技術のシステム及び方法によるメモリの使用(各メモリセグメントへのテーブルの割振り)に対応し、図4は、本発明のシステム及び方法によるメモリの使用(単一のメモリセグメントへのテーブルの割当て)に対応している。
図3及び図4は、ランダムアクセスメモリのセグメントn°Sの数を横軸で示すヒストグラムである。ランダムアクセスメモリのセグメントには0〜15の番号が付けられている。図3及び図4の縦軸は、GB単位のメモリ使用量Mに相当する。従来技術の方法では各メモリセグメントで3.2GBのメモリが使用されていることが分かる(図3)。それに対して、本発明の方法では1つのメモリセグメントのみが使用されている(図4)。
これらの図は、本発明によるメモリ使用量に関する利点を適切に示しており、この利点によってランダムアクセスメモリの容量を制限することが可能になる。

Claims (13)

  1. 物理的及び/または化学的現象を予測するためのコンピュータシステムであって、並列コンピューティングのための複数のマルチコア(4)プロセッサ(3)と、複数のメモリセグメント(6)を含むランダムアクセスメモリ(5)とを有し、前記物理的及び/または化学的現象の前記予測が、数値データが格納される少なくとも1つのテーブル(2)に基づいて実行される計算をよって行われるコンピュータシステムにおいて、
    前記ランダムアクセスメモリ(5)は、前記テーブル(2)が格納された単一の共有セグメントを有し、各プロセッサ(3)の各コア(4)は、前記物理的及び/または化学的現象を予測する前記計算を実行するために前記テーブル(2)を読み出すよう、前記共有セグメントと通信するように構成されていることを特徴とするコンピュータシステム。
  2. 前記物理的及び/または化学的現象が、内燃機関を備える車両の燃焼及び汚染物質の排出現象である、請求項1に記載のシステム。
  3. 前記テーブル(2)が、化学キネティクスコード及び/または炎の構造に関するフレームレット計算に基づいて生成される、請求項1または2に記載のシステム。
  4. 各プロセッサの各コア(4)が、前記共有セグメント(7)の前記テーブル(2)を、メッセージパッシングインターフェースMPIを用いて読み取るように構成されている、請求項1から3のいずれか1項に記載のシステム。
  5. 前記システムは、前記プロセッサ(3)間及び/または前記プロセッサ(3)の前記コア(4)間で前記計算を並列化するための手段を有する、請求項1から4のいずれか1項に記載のシステム。
  6. 前記プロセッサ(3)は、前記物理的及び/または化学的現象を予測するための数値流体力学コードを実行するように構成されている、請求項1から5のいずれか1項に記載のシステム。
  7. 請求項1から6のいずれか1項に記載のコンピュータシステムと、前記物理的及び/または化学的現象を予測するために使用されるデータを記憶する数値データのテーブル(2)とを用いて物理的及び/または化学的現象を予測するための方法であって、
    a)前記テーブル(2)が、ランダムアクセスメモリの単一の共有セグメントに割り当てられ、
    b)前記物理的及び/または化学的現象が、前記システムの前記複数のプロセッサ(3)の複数のコア(4)で前記テーブル(2)を用いて物理的及び/または化学的計算を実行することで予測され、各コア(4)が前記テーブルを読み出すように前記共有セグメント(7)と通信する、方法。
  8. 前記物理的及び/または化学的現象は、内燃機関を備える車両の燃焼及び汚染物質の排出現象である、請求項7に記載の方法。
  9. 前記方法は、化学キネティクスコード及び/または炎の構造に関するフレームレット計算コードに基づいて前記テーブル(2)を生成する先行ステップを含む、請求項7または8に記載の方法。
  10. 前記共有セグメント(7)に識別子が割り当てられ、前記識別子が複数の前記プロセッサの前記コアへ送信され、前記プロセッサ(3)から前記共有セグメント(7)へのポインタ(8)が前記識別子を用いて設定される、請求項7から9のいずれか1項に記載の方法。
  11. 前記物理的及び/または化学的現象を予測するために、前記プロセッサ(3)の前記コア(4)でそれぞれ流体力学計算が実行される、請求項7から10のいずれか1項に記載の方法。
  12. 前記物理的及び/または化学的計算が、複数の前記プロセッサ(3)間及び/または前記コア(4)間で並列に実行される、請求項7から11のいずれか1項に記載の方法。
  13. 前記コア(4)は、MPI関数を用いて前記共有セグメント(7)上の前記テーブル(2)を読み出す、請求項7から12のいずれか1項に記載の方法。
JP2019027589A 2018-02-19 2019-02-19 共有メモリセグメントを用いて物理的及び/または化学的現象を予測するためのシステム及び方法 Pending JP2019145104A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1851397 2018-02-19
FR1851397A FR3078176B1 (fr) 2018-02-19 2018-02-19 Systeme et procede de prediction d'un phenomene physique et/ou chimique au moyen d'un segment de memoire partage

Publications (1)

Publication Number Publication Date
JP2019145104A true JP2019145104A (ja) 2019-08-29

Family

ID=62528579

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019027589A Pending JP2019145104A (ja) 2018-02-19 2019-02-19 共有メモリセグメントを用いて物理的及び/または化学的現象を予測するためのシステム及び方法

Country Status (5)

Country Link
US (1) US11416652B2 (ja)
EP (1) EP3528134A1 (ja)
JP (1) JP2019145104A (ja)
CN (1) CN110175343A (ja)
FR (1) FR3078176B1 (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05181810A (ja) * 1991-10-29 1993-07-23 Fujitsu Ltd Cpu間での共通データ管理方式
JPH05233444A (ja) * 1992-02-18 1993-09-10 Nec Corp マイクロプロセッサシステム
JP2002157164A (ja) * 2000-09-25 2002-05-31 Thomson Licensing Sa データ一貫性メモリ管理システム及び方法及び関連するマルチプロセッサネットワーク
JP2008108256A (ja) * 2006-10-23 2008-05-08 Hewlett-Packard Development Co Lp コンピュータシステムの複数のプロセッサを結合するスイッチングシステムのデータストレージ
JP2011150427A (ja) * 2010-01-19 2011-08-04 Renesas Electronics Corp マルチプロセッサシステムおよびその制御方法
JP2013130579A (ja) * 2011-12-20 2013-07-04 IFP Energies Nouvelles 乗り物の汚染物質排出量を化学反応動力学と排出量との同時計算で予測するシステムおよび方法
JP2015057697A (ja) * 2013-09-16 2015-03-26 ゼネラル・エレクトリック・カンパニイ 制御システムシミュレーションシステムおよび方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5975350A (ja) * 1982-10-25 1984-04-28 Sumitomo Electric Ind Ltd マルチプロセツサシステムにおけるメモリ管理方法
US4642755A (en) * 1983-03-31 1987-02-10 At&T Bell Laboratories Shared memory with two distinct addressing structures
US4622631B1 (en) * 1983-12-30 1996-04-09 Recognition Int Inc Data processing system having a data coherence solution
JPH01229357A (ja) * 1988-03-09 1989-09-13 Fanuc Ltd 複数プロセッサ間のデータ授受方法
DE10128475A1 (de) * 2001-06-12 2003-01-02 Siemens Ag Mehrprozessorsystem mit geteiltem Arbeitsspeicher
US8762313B2 (en) * 2008-07-25 2014-06-24 Liveperson, Inc. Method and system for creating a predictive model for targeting web-page to a surfer
IT1403375B1 (it) * 2010-10-29 2013-10-17 Strollo Microcontrollore multiprocessore espandibile/parametrizzato
JP2012108748A (ja) * 2010-11-18 2012-06-07 Sony Corp データ処理装置、データ処理方法、およびプログラム
US8566537B2 (en) * 2011-03-29 2013-10-22 Intel Corporation Method and apparatus to facilitate shared pointers in a heterogeneous platform

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05181810A (ja) * 1991-10-29 1993-07-23 Fujitsu Ltd Cpu間での共通データ管理方式
JPH05233444A (ja) * 1992-02-18 1993-09-10 Nec Corp マイクロプロセッサシステム
JP2002157164A (ja) * 2000-09-25 2002-05-31 Thomson Licensing Sa データ一貫性メモリ管理システム及び方法及び関連するマルチプロセッサネットワーク
JP2008108256A (ja) * 2006-10-23 2008-05-08 Hewlett-Packard Development Co Lp コンピュータシステムの複数のプロセッサを結合するスイッチングシステムのデータストレージ
JP2011150427A (ja) * 2010-01-19 2011-08-04 Renesas Electronics Corp マルチプロセッサシステムおよびその制御方法
JP2013130579A (ja) * 2011-12-20 2013-07-04 IFP Energies Nouvelles 乗り物の汚染物質排出量を化学反応動力学と排出量との同時計算で予測するシステムおよび方法
JP2015057697A (ja) * 2013-09-16 2015-03-26 ゼネラル・エレクトリック・カンパニイ 制御システムシミュレーションシステムおよび方法

Also Published As

Publication number Publication date
FR3078176B1 (fr) 2020-02-28
US11416652B2 (en) 2022-08-16
US20190258758A1 (en) 2019-08-22
EP3528134A1 (fr) 2019-08-21
FR3078176A1 (fr) 2019-08-23
CN110175343A (zh) 2019-08-27

Similar Documents

Publication Publication Date Title
Liu et al. Fast synchronization‐free algorithms for parallel sparse triangular solves with multiple right‐hand sides
Wang et al. Asymo: scalable and efficient deep-learning inference on asymmetric mobile cpus
Kim et al. OPT: A new framework for overlapped and parallel triangulation in large-scale graphs
CN115016951B (zh) 流场数值模拟方法、装置、计算机设备和存储介质
US9824164B2 (en) System and method of predicting pollutant emissions of a vehicle with simultaneous chemical kinetics and emissions calculations
US9063805B2 (en) Method and system for enabling access to functionality provided by resources outside of an operating system environment
Zhang et al. An adaptive breadth-first search algorithm on integrated architectures
WO2021232769A1 (zh) 一种存储数据的方法及数据处理装置
Liu et al. Deterministic upperbounds of the worst-case execution times of cached programs
CN102855137B (zh) 用于自动化部件的编程的方法和程序设计系统
JP2007188523A (ja) タスク実行方法およびマルチプロセッサシステム
CN108139929B (zh) 用于调度多个任务的任务调度装置和方法
Butcher et al. Optimizing for KNL usage modes when data doesn't fit in MCDRAM
Fang et al. Aristotle: A performance impact indicator for the OpenCL kernels using local memory
US8959309B2 (en) Skip list generation
US20030097395A1 (en) Executing irregular parallel control structures
JP2019145104A (ja) 共有メモリセグメントを用いて物理的及び/または化学的現象を予測するためのシステム及び方法
He et al. Structured mesh-oriented framework design and optimization for a coarse-grained parallel CFD solver based on hybrid MPI/OpenMP programming
Peterson et al. Automatic halo management for the Uintah GPU-heterogeneous asynchronous many-task runtime
Dufrechou et al. Using analysis information in the synchronization‐free GPU solution of sparse triangular systems
Peluso et al. Supports for transparent object-migration in PDES systems
Korch et al. An in‐depth introduction of multi‐workgroup tiling for improving the locality of explicit one‐step methods for ODE systems with limited access distance on GPUs
Bertout et al. A heuristic to minimize the cardinality of a real-time task set by automated task clustering
Yan et al. QTMS: A quadratic time complexity topology-aware process mapping method for large-scale parallel applications on shared HPC system
Rashid et al. Trading between intra-and inter-task cache interference to improve schedulability

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220106

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230418

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230801