並列化
並列化
並列化
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/11/14 03:23 UTC 版)
「Quantum ESPRESSO」の記事における「並列化」の解説
QEの主要なコンポーネントは、階層的なプロセッサ間通信を行う、現代的なスーパーコンピュータのアーキテクチャを活用できるように設計されている。MPI並列とOpenMP並列の併用が可能で、様々な並列計算機上において良好なパフォーマンスを発揮することができる。
※この「並列化」の解説は、「Quantum ESPRESSO」の解説の一部です。
「並列化」を含む「Quantum ESPRESSO」の記事については、「Quantum ESPRESSO」の概要を参照ください。
並列化
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/12/11 05:35 UTC 版)
プログラムの並列化できる部分の実行時間の割合を P としたとき、並列化不可能な部分は (1 − P)であり、N個のプロセッサを使ったときの全体の性能向上率は次の式で表される。 S ( N ) = 1 ( 1 − P ) + P N {\displaystyle S(N)={\frac {1}{(1-P)+{\frac {P}{N}}}}} N が無限大に近づく極限では、性能向上率は 1 / (1 − P) となる。実際、(1 − P) の並列化不可能な成分がどれほど小さくとも N が大きくなれば価格性能比は急激に低下していく。 例として、P が90%ならば (1 − P) は 10% となり、N をどれだけ大きくしても性能向上は1プロセッサの10倍までで頭打ちとなる。このため、並列計算が有効であるのは、プロセッサ数が少ない場合か、適応領域の問題の P の値が極めて大きい場合(embarrassingly parallel 問題と呼ぶ)に限られる。並列計算のプログラミング技法の多くは、(1 – P) を可能な限り小さくするためのものである。 特定のプロセッサ数 (NP) での実測高速化係数 (SU) すなわち1プロセッサの何倍の性能かという値を使えば、P すなわち並列化可能部分の割合は次のように推定できる。 P estimated = 1 S U − 1 1 N P − 1 {\displaystyle P_{\text{estimated}}={\frac {{\frac {1}{SU}}-1}{{\frac {1}{NP}}-1}}} このように推定した P をアムダールの法則の式に適用すれば、異なるプロセッサ数での高速化の度合いが推定できる。 80%の性能を出すのに必要な並列度プロセッサ数(N)順次実行部分の実行時間の割合2 25% 4 8.3% 6 5.0% 8 3.6% 12 2.3% 16 1.7% 32 0.81% 64 0.40% 256 0.10% 1024 0.024% 4096 0.0061% 65536 0.00038% これは 0.25 / (N - 1) で計算できる。
※この「並列化」の解説は、「アムダールの法則」の解説の一部です。
「並列化」を含む「アムダールの法則」の記事については、「アムダールの法則」の概要を参照ください。
固有名詞の分類
- 並列化のページへのリンク