Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Raspberry Piの温度管理をソフトウェアで
Search
Kenichiro MATOHARA
September 13, 2020
Technology
0
23
Raspberry Piの温度管理をソフトウェアで
Kenichiro MATOHARA
September 13, 2020
Tweet
Share
More Decks by Kenichiro MATOHARA
See All by Kenichiro MATOHARA
ポータブルで色々なプロトコルに対応したファイルサーバーのcopypartyを試す
matoken
0
2
後で読む系サービスPocketの移行先にShioriを試す
matoken
0
30
GaleneのGo製ライブラリでtext chatを保存
matoken
0
13
MastodonとtootとTerminal graphics protocolのKittyとiTerm2
matoken
0
65
ChangeDetection.ioでウェブページを定期チェック
matoken
0
160
ターミナルエミュレータのKittyで文字サイズ変更
matoken
0
66
Glanceで個人向けポータルサイト
matoken
0
130
Google検索をJavaScriptなしで
matoken
0
120
fuse-archiveでいろんなアーカイブをマウント
matoken
0
190
Other Decks in Technology
See All in Technology
AWSで始める実践Dagster入門
kitagawaz
1
620
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
110
💡Ruby 川辺で灯すPicoRubyからの光
bash0c7
0
120
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
2
510
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
420
20250913_JAWS_sysad_kobe
takuyay0ne
2
210
AWSを利用する上で知っておきたい名前解決のはなし(10分版)
nagisa53
10
3.1k
まずはマネコンでちゃちゃっと作ってから、それをCDKにしてみよか。
yamada_r
2
100
5年目から始める Vue3 サイト改善 #frontendo
tacck
PRO
3
220
エラーとアクセシビリティ
schktjm
1
1.3k
サラリーマンの小遣いで作るtoCサービス - Cloudflare Workersでスケールする開発戦略
shinaps
2
440
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
9
73k
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
188
55k
Bash Introduction
62gerente
615
210k
4 Signs Your Business is Dying
shpigford
184
22k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.1k
Building Applications with DynamoDB
mza
96
6.6k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Being A Developer After 40
akosma
90
590k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Transcript
Raspberry Pi Raspberry Pi の温度管理を の温度管理を ソフトウェア ソフトウェア で で
Doc Writer <
[email protected]
> 1 / 22
Kenichiro Kenichiro Matohara(matoken) Matohara(matoken) 鹿児島から参加 好きなLinuxディストリビューションはDebian 6月に申し込んだRakuten miniで上り改善……未だ 来ないでもキャンペーンやってる お仕事募集
mailto:
[email protected]
https://matoken.org 2 / 22
Raspberry Pi Raspberry Pi 多分今一番有名なSBC 入手性がよく情報も多い 元々教育向けだったけどホビーや組み込みにも モデルが沢山ある 3 /
22
今回の環境 今回の環境 Raspberry Pi 3 model B Raspberry Pi OS
arm64(β) と armhf 4 / 22
省電力なので計算を任せ 省電力なので計算を任せ て放置したりしがち て放置したりしがち CPU 100% x4 夏前までは問題なく動いていたが夏になって固まる ように 5
/ 22
まずはログを撮る まずはログを撮る crontabで1分毎に情報を記録 UNIX Time date +%s SoC温度 /sys/class/thermal/thermal_zone0/temp スロットリング周りのフラグ
vcgencmd get_throttled arm周波数 vcgencmd measure_clock arm (外気温度も取るべきだった) * * * * * printf "`date +\%s`,`cat /sys/class/thermal/thermal_zone0/temp`,`echo "o 6 / 22
負荷を掛ける 負荷を掛ける 今回のテストで使った負荷(いつもはvanity address/vttとかとか) $ cat /dev/urandom > /dev/null &
$ cat /dev/urandom > /dev/null & $ cat /dev/urandom > /dev/null & $ cat /dev/urandom > /dev/null & 7 / 22
温度の問題みたい? 温度の問題みたい? 既定値ではCPU(SoC)がの温度が85度までに設定さ れている CPU温度80度(制限設定温度-5度)からスロットリン グ CPU温度85度を越えると固まっているように見え る…… 外気が35度を越えると駄目な感じ 8
/ 22
OSの問題? OSの問題? Raspberry Pi OS arm64(β)を使っていたのでそのせい かと思いarmhf版に入れ替え→ 固まるまでの時間が 伸びたがやっぱり固まる 9
/ 22
正攻法 正攻法 ヒートシンク,ファンの増設 空調 10 / 22
金欠なのでとりあえずソ 金欠なのでとりあえずソ フトだけでどうにか フトだけでどうにか 11 / 22
SoC制限温度を下げる SoC制限温度を下げる 85度はちょっと高そう 70度以下にしたほうがいいという書き込みを見か けたので70度に設定 /boot/config.txt でパラメータを設定できる まあ固まる temp_limit=70 12
/ 22
SoCの最大周波数を下げ SoCの最大周波数を下げ てみる てみる まあ固まる arm_freq=800 13 / 22
SoCの最小周波数を下げ SoCの最小周波数を下げ てみる(これが効くので てみる(これが効くので は?) は?) 600MHz以下には設定できないみたいでやっぱり固ま る…… arm_freq_min=400 $
vcgencmd get_config int | grep arm_freq arm_freq=800 arm_freq_min=600 14 / 22
Raspberry Pi のスロッ Raspberry Pi のスロッ トリングでは無理そう トリングでは無理そう 600MHz以下に下げられない &
600MHzにスロットリ ングされても固まる 15 / 22
cpulimit cpulimit シグナルを使ってプロセスの制限を行う cat からはじまるプロセスを50%に制限 温度が下がるのを確認 :) $ pgrep ^cat
| xargs -n1 -I{} sh -c "cpulimit -p {} -l 50 -v &" 特定プロセスのcpu利用率を制限するcpulimitを試す – matoken’s meme 16 / 22
とりあえずcpulimitで行 とりあえずcpulimitで行 けそう けそう 温度を見張って温度が高くなったらcpulimitを有効 に 温度が下がったら戻す 17 / 22
来夏に実戦投入? 来夏に実戦投入? 現在は100% x4でも固まらない 18 / 22
その他のパラメータ(未確 その他のパラメータ(未確 認) 認) arm_freq 以外のパラメータ gpu_freq, core_freq, h264_freq, isp_freq,
v3d_freq, sdram_freq, over_voltage, over_voltage_sdram…… 調べるのちょっと大変かも(不安定になりそう) https://elinux.org/RPicon g#Overclocking_options 19 / 22
そもそも そもそも 空調入れたい 20 / 22
発表時のツッコミとか 発表時のツッコミとか cpufreqでクロック制御できるよ Raspberry pi だと色々いじったことぼくもあります (ボルトさげると電流下がるんですけどそのうち起動 しなくなったりするのでたのしいですね) (Wi が動かなくなったり)
僕も熱で困っていた事があるので、cpulimit今度試 してみようと思います。有難うございました。 boot/cmdline.txtでmaxcpusが指定できるようで す。 https://uzulla.hateblo.jp/entry/2018/05/04/163608 21 / 22
奥付 奥付 発表 2020-09-13(Sun) 発表者 ライセンス CC BY-NC-SA 4.0 日本Androidの会秋葉原支部ロボット部
第96回 勉強会 Kenichiro Matohara(matoken) 22 / 22