Skip to main content
QUICK REVIEW

[論文レビュー] A Multi-Threaded Version of MCFM

John M. Campbell, R. Keith Ellis|arXiv (Cornell University)|Mar 20, 2015
Parallel Computing and Optimization Techniques被引用数 7
ひとこと要約

この論文では、OpenMPを用いてマルチコアプロセッサ上で自動並列化を可能にするMCFMモンテカルロイベントジェネレータのマルチスレッド実装を提示している。VEGAS統合ルーチンにOpenMPを統合することで、数値的正確性を損なわずに、NLO段階でIntel Xeon-Phiコプロセッサ上で最大119倍の高速化を達成した。これにより、最小限のユーザー介入で複雑な高エネルギー物理学的過程の計算を高速化できるようになった。

ABSTRACT

We report on our findings modifying MCFM using OpenMP to implement multi-threading. By using OpenMP, the modified MCFM will execute on any processor, automatically adjusting to the number of available threads. We modified the integration routine VEGAS to distribute the event evaluation over the threads, while combining all events at the end of every iteration to optimize the numerical integration. Special care has been taken that the results of the Monte Carlo integration are independent of the number of threads used, to facilitate the validation of the OpenMP version of MCFM.

研究の動機と目的

  • マルチコアプロセッサアーキテクチャを活用して、MCFMにおけるモンテカルロイベント生成を高速化すること。
  • スレッド数に依存しない数値的結果を保ちながら、OpenMPを用いてMCFMにスレッド並列化を実装すること。
  • CPUとIntel Xeon-Phiコプロセッサを含む多様なハードウェアアーキテクチャにおけるスケーリング性能を評価すること。
  • ユーザーの設定なしに、次-leading-order(NLO)プロセスの計算を高速化できること。
  • 将来のハードウェアトレンドに対応するため、Xeon-Phiのような新興の多数コアアーキテクチャをサポートすること。

提案手法

  • 各イテレーションで結果を統合するように、VEGAS統合ルーチンを変更し、イベント評価をOpenMPスレッドに分散させながら、数値的安定性を維持した。
  • FORTRANコードにおける共有メモリ並列化を実現するため、OpenMPコンパイラディレクティブを用い、OpenMPサポートなしでコンパイルしても後方互換性を保った。
  • 各イテレーション後にグリッド更新と統合重みを同期することで、スレッド間の独立性を確保した。
  • 利用可能なハードウェアコア数に応じて自動的にスレッド数をスケーリングし、ユーザーの設定を不要とした。
  • Intel Core i7、デュアル Xeon X5650、AMD 6128 HE Opteron、Intel Xeon-Phi 5110P の複数アーキテクチャで実装をテストした。
  • LOおよびNLOプロセスにおけるイベント生成レートとスピードアップ要因を測定して性能を評価した。

実験結果

リサーチクエスチョン

  • RQ1スレッド依存の数値バイアスを導入せずに、VEGAS統合をOpenMPで効果的に並列化できるか?
  • RQ2異なるCPUおよび多数コアアーキテクチャにおけるマルチスレッドMCFMのスケーリング性能はどのようになるか?
  • RQ3Intel Xeon-Phiコプロセッサ上でNLOプロセスに達成可能な最大スピードアップは何か?また、性能を制限する要因は何か?
  • RQ4スレッド数が変化しても、マルチスレッドMCFMは数値的正確性と再現性を維持できるか?
  • RQ5Xeon-Phiコプロセッサは、計算負荷の高いNLO計算において、従来のCPUに比べてどの程度優れているか?

主な発見

  • マルチスレッドMCFMは、Intel Xeon-Phi 5110Pコプロセッサ上でNLOプロセスで最大119倍のスピードアップを達成し、1時間に1070万イベントを生成した。
  • NLO段階では、Xeon-Phiコプロセッサが240スレッドまで連続的に加速し、1評価あたり31.82秒にまで短縮され、単一スレッド実行に比べ119倍のスピードアップを達成した。
  • Intel Core i7-4770では、マルチスレッド版が1時間に1420万NLOイベントを生成し、標準CPUでも良好なスケーリングを示した。
  • LOプロセスではメモリ帯域幅が制限要因となるが、NLO段階では計算がボトルネックとなり、高い加速が可能となった。
  • OpenMP実装はスレッド数にかかわらず数値的一致性を維持しており、再現性が保たれ、検証が容易になった。
  • 2015年夏に予定される新しいXeon-Phiプロセッサは、帯域幅のボトルネックを軽減し、コア性能を向上させることでさらなる性能向上が期待される。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。