命令サイズ、実行可能な依存関係を得るための低レベルプロセス分析

命令サイズ、実行可能な依存関係を得るための低レベルプロセス分析

私はグラフ理論を使ってシステムをモデル化するアプリケーションを開発しようとしました([1]を参照)。グラフ理論は、基本的にパーティション(実行可能アイテムのグループ化)を見つけるために実行可能アイテムをモデル化するために使用でき、マッピングに使用できます。コアまで。

これを達成するには多くの情報が必要です。 Linux(特に私たちのRaspbian)オペレーティングシステムがどのようにすべてを細かく整理するのかわからないので、私たちのアルゴリズムがどのようにコアの使用率を向上させるかを理解したいので、プロセス情報を得て直接モデル化してみるとどうかと思いました。

これには次のものが必要です。

命令サイズ、タスクを完了するためにCPUが実行する命令の数(非常に重要)プロセスに必要なメモリ、物理メモリ、および仮想メモリは、プロセスのコアロードをデバッグするために使用されます。プロセスと通信する読取り/書込みアクセスは読取りまたは書込みアクセスであるか、インターフェイスの種類は何ですか、読み取りおよび/または書込みに必要な命令サイズとメモリはいくらですか?私はLinuxで「top」コマンドを使用してこの情報のいくつかを抽出できると思いました。コア負荷、メモリ使用量、仮想および物理メモリを提供します。また、情報を見るためにプロセスをコアにドロップできるように、「ワークセット」を使用する予定であることにも言及する必要があると思いました([2]を参照)。

最初の質問命令サイズ、読み取り/書き込みアクセス、および上記の項目を効率的に取得するにはどうすればよいですか?

2番目の質問プロセスの実行可能状態、つまり実行される単純な機能を表示する方法はありますか?そして彼らの情報と読み書きアクセスは何ですか?問題は、プロセス間の相互作用ではなく、プロセス自体をモデル化する方法を見つけることですか?

第三に、どのツールを使用してプロセスとコマンドのサイズをグラフで視覚化する方法があるかをご存知ですか?

[1]http://math.tut.fi/~ruohonen/GT_English.pdf

[2] プロセスをコアに配置するには、次のようにします。

pid = $(pgrep -u root -f $process_name -n)
sudo taskset -pc $core $pid &&
echo "Process $process_name with PID=$pid has been placed on core $core"

関連情報