さまざまな理由から、これは優れたアプローチではありません。理想的には、プログラムの外側のループを変更して、コマンド ラインですべてのファイルを処理できるようにする必要があります。そうすれば、すべてを 1 回の実行で実行できます。
$ shark -i
$ mycprog $SomeDirectory/*
それができない場合は、システム全体のプロファイリング用に Shark 構成を設定し、bash ループの前にプロファイリングを開始し、その後プロファイリングを停止する必要があります。その後、Shark でプロファイルを表示すると、関心のないプロセスを除外できます。
まず、Shark (GUI アプリ) を開き、構成をセットアップして、リモート コントロールを有効にします ( Sampling
=> Programmatic
)。Time Profile
選択したことを確認してくださいEverything
。
次に、コマンドラインから:
$ chudRemoteCtrl -s "mycprog"
$ sleep 1
$ for f in $SomeDirectory/*
$ do
$ mycprog $SomeDirectory/$f
$ done
$ chudRemoteCtrl -e