2017-12-13 8 views
0

私はdask.distributedを使用して、ワーカー間で多くのジョブをスケジュールしています。ドキュメンテーションは、Bokehインターフェース hereからプロファイリング情報を取得する方法を示しています。dask.distributedプロファイリング時間情報を取得しますか?

また、client.profile()を呼び出す生プロファイル情報を取得できることも示しています。 しかし、このメソッドを呼び出すと、プロファイリング情報にプロセスの平均実行時間が含まれないように見えますが、Bokenインターフェイスには存在します。これを生の形式で取得する方法はありますか?

はまた、profile.pyはここで、プロファイル情報の構造を説明します。ここで情報をタイミングの言及は

We represent this tree as a nested dictionary with the following form: 

{ 
'identifier': 'root', 
'description': 'A long description of the line of code being run.', 
'count': 10 # the number of times we have seen this line 
'children': { # callers of this line. Recursive dicts 
    'ident-b': {'description': ... 
       'identifier': 'ident-a', 
       'count': ... 
       'children': {...}}, 
    'ident-b': {'description': ... 
       'identifier': 'ident-b', 
       'count': ... 
       'children': {...}}} 
} 

はありません。ありがとう!

答えて

0

'count'の値とconfig.yamlファイルのprofile-intervalの値を比較する必要があります。 profile-intervalの値はミリ秒単位であり、作業スレッドをサンプリングする頻度を決定します。したがって、profile-intervalが10で、特定の行の50カウントを見た場合、その行は約500ms *のスレッドでアクティブだった可能性があります。

関連する問題