Eyes, JAPAN Blog > D言語でGCのプロファイル

D言語でGCのプロファイル

mima

この記事は1年以上前に書かれたもので、内容が古い可能性がありますのでご注意ください。

Github版のdruntime(acf61b8c0e4fbf41a31209845154e2a53eb31acb)では、GCのプロファイルを行うことが出来ます。

module gcprofile;

extern(C) __gshared string[] rt_options = ["gcopt=profile:1"];

class Huge
{
    long[1024] huge;
}

void main()
{
    foreach (_; 0 .. 2^^20) new Huge();
}

druntimeにオプションを渡しています。
実行すると、

$ rdmd gcprofile.d
	Number of collections:  3086
	Total GC prep time:  34 milliseconds
	Total mark time:  41 milliseconds
	Total sweep time:  38 milliseconds
	Total page recovery time:  18 milliseconds
	Max Pause Time:  0 milliseconds
	Grand total GC time:  133 milliseconds
GC summary:    5 MB, 3086 GC  133 ms, Pauses   76 ms <    0 ms

GCのプロファイル結果が表示されます。
便利ですね。

鳥小屋での実行結果

担当:美馬(dmdのプロファイラと連携できると、もっと面白い気がします)

Comments are closed.