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
後で読む系サービスPocketの移行先にShioriを試す
matoken
0
15
GaleneのGo製ライブラリでtext chatを保存
matoken
0
8
MastodonとtootとTerminal graphics protocolのKittyとiTerm2
matoken
0
42
ChangeDetection.ioでウェブページを定期チェック
matoken
0
97
ターミナルエミュレータのKittyで文字サイズ変更
matoken
0
45
Glanceで個人向けポータルサイト
matoken
0
93
Google検索をJavaScriptなしで
matoken
0
73
fuse-archiveでいろんなアーカイブをマウント
matoken
0
140
最近試したLinuxのOCRツール(NDL古典籍OCR-Lite/YomiToku)
matoken
0
250
Other Decks in Technology
See All in Technology
ビズリーチが挑む メトリクスを活用した技術的負債の解消 / dev-productivity-con2025
visional_engineering_and_design
0
280
Amazon Bedrockで実現する 新たな学習体験
kzkmaeda
2
680
250627 関西Ruby会議08 前夜祭 RejectKaigi「DJ on Ruby Ver.0.1」
msykd
PRO
2
370
Delegating the chores of authenticating users to Keycloak
ahus1
0
130
KubeCon + CloudNativeCon Japan 2025 Recap Opening & Choose Your Own Adventureシリーズまとめ
mmmatsuda
0
240
生成AI時代の開発組織・技術・プロセス 〜 ログラスの挑戦と考察 〜
itohiro73
1
380
How Community Opened Global Doors
hiroramos4
PRO
1
130
KubeCon + CloudNativeCon Japan 2025 に行ってきた! & containerd の新機能紹介
honahuku
0
120
なぜ私はいま、ここにいるのか? #もがく中堅デザイナー #プロダクトデザイナー
bengo4com
0
1.3k
Yamla: Rustでつくるリアルタイム性を追求した機械学習基盤 / Yamla: A Rust-Based Machine Learning Platform Pursuing Real-Time Capabilities
lycorptech_jp
PRO
4
180
CursorによるPMO業務の代替 / Automating PMO Tasks with Cursor
motoyoshi_kakaku
2
800
Claude Code Actionを使ったコード品質改善の取り組み
potix2
PRO
6
2.6k
Featured
See All Featured
Become a Pro
speakerdeck
PRO
28
5.4k
It's Worth the Effort
3n
185
28k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
How to train your dragon (web standard)
notwaldorf
94
6.1k
The World Runs on Bad Software
bkeepers
PRO
69
11k
A Modern Web Designer's Workflow
chriscoyier
694
190k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Writing Fast Ruby
sferik
628
62k
Speed Design
sergeychernyshev
32
1k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.4k
Adopting Sorbet at Scale
ufuk
77
9.4k
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