next up previous contents index
Next: メモリ使用量の解析 Up: OpenMX Ver. 3.7 ユーザーマニュアル Previous: 自動フォース・テスター   Contents   Index

自動メモリーリーク・テスター

OpenMXでは、使用メモリは必要に応じて動的に割り当てられています。 動的メモリー割り当て(dynamic memory allocation)では、メモリリークが発生する場合があり、 MDステップの増大とともに使用メモリが浪費され、最終的には異常終了する可能性が生じます。

OpenMXを次のように実行することで、メモリリークをチェックすることが可能です。

逐次計算

     % ./openmx -mltest 
  
並列計算
     % ./openmx -mltest "mpirun -np 4 openmx"
  
ディレクトリ「work/ml_example」に保存されている13個のテスト用入力ファイルを用いて、 メモリリークが監視されます。この際に、プログラムコード「openmx」中の同じモニターポイントで 実際に使用されたVSZおよびRSSを監視します。計算終了後、ファイル「mltest.result」が生成します。 監視されたVSZとRSSはMDステップの関数として、ファイル「mltest.result」中に次のように 出力されていますので、メモリリークが生じているのかどうか確認できます。
    1     ml_example/Co4.dat              

                   CPU (%)     VSZ (kbyte)    RSS (kbyte)
 MD_iter=   1      92.900      49756          15736
 MD_iter=   2      84.900      73344          57208
 MD_iter=   3      81.200      73344          57212
 MD_iter=   4      85.900      98672          82548
 MD_iter=   5      82.800      98672          82548
 MD_iter=   6      83.800      98672          82548
 MD_iter=   7      84.200      98672          82548
 MD_iter=   8      84.600      98824          82688
 MD_iter=   9      85.000      98824          82688
 MD_iter=  10      87.300      98824          82688
 MD_iter=  11      87.500      98824          82688
 MD_iter=  12      87.400      98824          82688
 MD_iter=  13      85.700      98824          82688
 MD_iter=  14      84.500      98824          82688
 MD_iter=  15      86.100      98824          82688
 MD_iter=  16      86.300      98824          82688
 MD_iter=  17      86.500      98824          82688
 MD_iter=  18      86.400      98824          82688
 MD_iter=  19      86.500      98824          82688
 MD_iter=  20      87.500      98824          82688

    2     ml_example/Co4+U.dat            

                   CPU (%)     VSZ (kbyte)    RSS (kbyte)
 MD_iter=   1      92.800      50048          15924
 MD_iter=   2      84.700      73628          57476
 MD_iter=   3      84.700      73628          57496
 MD_iter=   4      85.300      73628          57496
 MD_iter=   5      85.100      98828          82684
 MD_iter=   6      85.000      98828          82684
    ......
    ....



t-ozaki 2013-12-23