使いやすいLinux電源とリソース消費監視ライブラリとデーモン。 CPU、GPU、RAM、I/O、ネットワーク、およびシステム全体を監視します。
このライブラリはmeson建物システムとして使用しています。 Mesonをインストールするには、python> = 3.8が必要です。ニーズに応じて、次の手順を確認してください。
# Ubuntu
sudo apt install python3 python3-pip # Ubuntu
sudo apt install ninja-buildsudo pip3 install meson依存関係
まず、これがLinuxライブラリであることを思い出すことが重要です。次の依存関係が必要です。
Fedora 40では、以下を使用してこれらの依存関係の一部をインストールできます。
# ProcPS
yum install procps-ng-devel.x86_64 procps-ng.x86_64
# Linux Perf
yum install perf
# SQLite
yum install libsqlite3x.x86_64 libsqlite3x-devel.x86_64
# ZeroMQ
yum install cppzmq-devel.x86_64
# JsonCPP
yum install jsoncpp-devel.x86_64Ubuntu 20.04で:
# ProcPS
apt install libprocps-dev libprocps8
# Linux Perf
apt install linux-tools-common linux-tools-generic
# SQLite
apt install libsqlite3-dev libsqlite3-0
# ZeroMQ
apt install libzmqpp4 libzmqpp-dev
# JsonCPP
apt install libjsoncpp-devオプション
ドキュメントには、Graphviz、Java、Texlive、Doxygenなどの他の依存関係が必要です。使用してインストールしてください。
# Ubuntu
sudo apt install doxygen graphviz openjdk-17-jre texlive-font-utilsドキュメントをコンパイルする場合は、「-dbuild-docs」または「-dbuild-docsのみ」をtrueに切り替えることができます。
エフィモンのコンパイルは、メソンプロジェクトと同じプロセスに従います。あなたのシステムにエフィモンを置くための手順に従ってください:
meson builddir $OPTIONS
ninja -C builddinr
sudo ninja -C builddir Efimonは/usr/local/ prefixの下にインストールされます。
$OPTIONSについては、次のことを選択できます。
| オプション | デフォルト値 | 値 | 説明 |
|---|---|---|---|
| build-docs | 間違い | [本当、偽] | ドキュメントコンパイルを有効にします |
| build-docsのみ | 間違い | [本当、偽] | docsのみのコンパイルを有効にします |
| ビルド検査 | 真実 | [本当、偽] | 例のコンピレーションを有効にします |
| 開発者モード | 真実 | [本当、偽] | 開発者モードを有効にします |
| Enable-PCM | 真実 | [本当、偽] | Intel PCMを有効にします |
| Enable-Perf | 真実 | [本当、偽] | Linuxパフォーマンスツールを有効にします |
| enable-rapl | 真実 | [本当、偽] | RAPLインターフェイスを有効にします |
| Enable-SQL | 真実 | [本当、偽] | SQLロガーを有効にします |
| Enable-IPMI | 真実 | [本当、偽] | IPMIロガーを有効にします |
TBD
Efimon Power Analyzerはプロセスをラップし、分析を実行します。それは自己完結型であり、ルートが必要です。
現在、ヒストグラムに基づいて消費電力を測定するための分析装置に焦点を当てています。
PID=2000 # Process ID
STIME=10 # Metering during 10 seconds
sudo efimon-power-analyser -p ${PID} -s ${STIME} > consumption.csvそれを実行する別の方法:
STIME=10 # Metering during 10 seconds
# the command is time sleep 1
sudo efimon-power-analyser -s ${STIME} -c time sleep 1Efimon Daemonは、PIDの観測を実行するサーバーです。 IPC(TCP)を介して分析するプロセスに関する情報を受け取ります。ルートが必要です。
使用例:
efimon-daemon次のオプションがあります:
Efimon Launcherはアプリケーションをラップし、実行を開始するか、PIDを傍受します。 IPCを介してエフィモンデーモンに接続し、分析を抽出します。
ルートは必要ありません。
APP= " ../NanoBenchmark/cpu 11 "
efimon-launcher -s 10 -c ${APP}コマンドを起動します。
efimon-launcher -s 3 --pid 60603すでに実行されているプロセスを監視します。
次のオプションがあります:
ランチャーには、エフィモンデーモンの実行中のインスタンスが必要です
エフィモンは次のプラットフォームでテストされています。
このプロジェクトは、LGPL v2.1ライセンスの下でお客様に提供されます。商用アプリケーションからエフィモンへの動的リンケージは許可されています。派生した作業と変更は、Efimon(LGPL v2.1)と同じライセンスの下でリリースする必要があります。