Quality and performance of a pseudo-random number generator in massively parallel plasma particle simulations
超並列プラズマ粒子シミュレーションにおける擬似乱数発生器の特性と性能
松岡 清吉* ; 佐竹 真介*; 井戸村 泰宏 ; 今村 俊幸*
Matsuoka, Seikichi*; Satake, Shinsuke*; Idomura, Yasuhiro; Imamura, Toshiyuki*
プラズマ輸送のモンテカルロ粒子コードを用いて並列擬似乱数発生ライブラリKMATH_RANDOMの特性と性能を評価した。本ライブラリはジャンプルーチンを伴うメルセンヌ・ツイスタに基いて実装されており、京コンピュータのような超並列スーパーコンピュータに適し、容易に利用可能である。本ライブラリは擬似乱数発生器の特性と性能を劣化させることなく粒子コードの並列化を数千プロセスまで向上する。その結果、大量の乱数を効率的に発生させることが可能となり、粒子コードで数値ノイズに起因する非物理的な現象を除去できるようになった。
The quality and performance of a parallel pseudo-random number generator (PRNG), KMATH_RANDOM, are investigated using a Monte Carlo particle simulation code for the plasma transport. The library is based on Mersenne Twister with jump routines and provides a numerical tool which is suitable and easy-to-use on massively parallel supercomputers such as K-computer. The library enables the particle code to increase the parallelization up to several thousand processes without loosing the quality and performance of the PRNG. As a result, the particle code can use large amounts of random numbers, which results in removing unphysical phenomena caused by a numerical noise.