Raspberry PiのCPU温度グラフ化ツールのtmchkの更新:ver0.03

tmchkを更新しました。案外早く更新できましたが、バグを抱え込むのも嫌ですし、検証の時間を長くするのも惜しいので、機能の追加は1つのみですが、人によっては大幅に使い勝手が向上します。

このページはあくまで更新内容及び今後の方針を残しておくページなりますので、インストール方法や使い方はこちらのtmchk紹介ページにて説明しているのでそちらを参照してください。

https://www.thunsuke.com/index.php/blog/thun-tmchk-explanation/

更新内容

以下の内容を追加しました。

  • .csv形式による記録データの出力に対応

以前から考えてはいたのですが、せっかく記録をとってもグラフにするだけだと詳しい数字がわからないのは、人によっては少し不便なんじゃないかということでこの機能を追加しました。あとは内部的にもデータをいったん保存しているので、これを用いないのは少しもったいないなというのもあります。

.csvの拡張子のファイルは某社の表計算ソフトでも開くことができるぐらいには一般的なファイルなので、そちらのソフトでもグラフを書いたりできるので、いろんな使い方が思い浮かびますね。このデータを用いて別ツールの元データにするなんて使い方も考えられるので結構いい更新だと個人的には思っています。

あとはケースのレビューとかされる方は具体的な数字がわかったほうがよかったと思うので、万人に使いやすくなったはずです。

機能説明、仕様

.csvデータファイルの出力には特に何も依存関係などがないので、追加パッケージやライセンスに変更はありません。

csvデータファイルについては、標準で出力されるようになっていて、オプションなどでの出力するしないの設定はできません。また”--separate”オプションを用いても出力が行われますが、分割されてデータが出力されるということはありません。全てのデータが1つにまとまっています。

また内部的な処理では、前回のver0.02系とほぼ同様の手順を踏みつつ、最後にデータを整理するような形をとっていますので、tmchk実行中の負担はほとんどかわらないので従来通りの速度で使うことができます。個人的には多機能化を進めても重くなりすぎてはこの手のグラフ化ツールは意味がないと思っているので、今後もなるべく動作は変わらない速度で、より安定したソフトウェアを目指すという方針は変えないつもりです。

ver0.03aの現在出力される.csvデータファイルのフォーマットは以下のようになっています。参考までに2行書いておきます。

time,CPU_temperature,CPU_usage,CPU_frequency
0,39.00,11,1000.00
...

「,」が区切り文字になっています。左から順に「経過時間(秒)、「CPU温度」、「CPU使用率」、「CPU動作周波数」となっています。加えて、グラフ化した際にタイトルなどの自動化を考慮し、一番初めの行は各パラメータ名を付けています。この文字の対応表は以下です。

time経過時間
CPU_temperatureCPU温度
CPU_usageCPU使用率
CPU_frequencyCPU動作周波数

実行例

tmchk 1 1 /hoge/huga/test.png --separate

実行時のグラフは省きます。今回機能追加した.csvデータファイルの内容を以下に示します。

time,CPU_temperature,CPU_usage,CPU_frequency
0,39.00,11,1000.00
1,39.00,8,1500.00
2,40.00,10,750.00
3,39.00,9,750.00
4,41.00,11,750.00
5,39.00,9,750.00
6,40.00,10,750.00
7,39.00,7,1500.00
8,39.00,7,750.00
9,40.00,8,1500.00
10,39.00,7,750.00
11,40.00,10,750.00
12,39.00,11,1500.00
13,39.00,9,1500.00
14,40.00,10,750.00
15,39.00,10,1500.00
16,39.00,15,750.00
17,39.00,10,750.00
18,39.00,10,750.00
19,40.00,10,1500.00
20,40.00,11,750.00
21,40.00,10,1500.00
22,40.00,10,750.00
23,40.00,7,1000.00
24,39.00,9,1500.00
25,39.00,10,600.00
26,39.00,6,1500.00
27,40.00,9,1500.00
28,40.00,9,1500.00
29,41.00,11,750.00
30,39.00,9,1500.00
31,40.00,9,1500.00
32,40.00,10,750.00
33,39.00,7,750.00
34,40.00,10,1500.00
35,39.00,12,750.00
36,40.00,8,1500.00
37,39.00,9,750.00
38,39.00,10,750.00
39,40.00,7,600.00
40,39.00,6,600.00
41,39.00,7,600.00
42,40.00,6,750.00
43,40.00,5,750.00
44,40.00,6,600.00
45,39.00,32,750.00
46,40.00,11,750.00
47,40.00,9,1500.00
48,39.00,10,600.00
49,39.00,9,750.00
50,40.00,10,1500.00
51,40.00,11,750.00
52,39.00,10,750.00
53,39.00,10,600.00
54,38.00,10,750.00
55,39.00,9,1500.00
56,39.00,11,750.00
57,40.00,7,1500.00
58,39.00,9,1500.00
59,39.00,11,600.00

今後の予定

前回の更新記事で書いた通りの内容がほとんどですが、次回の更新時は、グラフを出力しないためのオプションの追加を考えています。つまりcsvデータファイルのみの出力が可能になるオプションを追加しようと思っています。これにより他ツールにデータを取り込んだり、ご自身で別途データだけを使いたいという事態に対応が可能になると考えています。またこのオプションを用いるとき「gnuplot」を用いないで利用することができるので、最小限のパッケージでデータのみを取り出すことがかのうになるはずです。ただし「gnuplot」のパッケージがない時にグラフを書く動作が指定されたときどうするかを考えているのですが、基本的にはうまく動作しないだけなので、特にその点に改良を加えるつもりはありません。説明ページにあるようにグラフ書くなら「gnuplot」を入れて下さいと書いているので、それを守っていただくということで。

それ以外のI/O負荷を下げるため最適化は折を見て次の次以降の更新で提供する予定です。

それ以外にの項目だと、存在しないディレクトリを指定したときの挙動を追加、特定の2種パラメータのみのグラフを書けるようにするオプションの追加を考えています。また今はRaspbian(Raspberry Pi OS)専用のソフトウェアとなっていますが、Orange PiやRock Piなどの他のLinux環境でも使えるような汎用的なtmchkのブランチも考えています。ただし、その際はCPU動作周波数は表示できないと思います。これも次の次以降の内容となります。

以上です。

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です