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
ESP32のマルチコアの能力を試してみた
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
makotaka
October 23, 2018
1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ESP32のマルチコアの能力を試してみた
makotaka
October 23, 2018
More Decks by makotaka
See All by makotaka
俺のLPWA
makotaka
1
500
クラウド上のIoT_Platformからドローンを操作_公開用_.pdf
makotaka
1
790
Featured
See All Featured
Joys of Absence: A Defence of Solitary Play
codingconduct
1
390
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.9k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
200
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Site-Speed That Sticks
csswizardry
13
1.2k
Evolving SEO for Evolving Search Engines
ryanjones
0
210
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
360
GraphQLとの向き合い方2022年版
quramy
50
15k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Transcript
ESP32のマルチコアの能力を試してみた IoT縛りの勉強会! IoTLT vol.44 @opt @makotaka たかはしまこと
自己紹介 •名前:たかはしまこと •所属:中国系の雲(クラウド)の中 •仕事:ネットワーク関連一般担当 •課外活動:お酒、オートバイ、技術的に興味持ったこと色々 ESP32 〜 Alibaba Cloud IoT
Platform をMQTT接続(Arduino Core版) https://qiita.com/makotaka/items/388fa1ee0eb1f0237012 中国にProxy立ててWebコンテンツがどう見えているかを日本から確認してみた https://qiita.com/makotaka/items/3ccebfb890fd0b17f68b
ESP32とは • WiFi/Bluetoothを内蔵したSoC • 技適マーク付きの物が安価に入手可(約5ドル〜) • Arduino IDEでの開発可(お手軽) • Dual
Core https://www.aliexpress.com/wholesale?catId=0&initiative_id=SB_20181019164128&SearchText=ESP32
Arduino Coreのコード void setup() { // 起動時に一度だけ実行 } void loop()
{ // 繰り返しループして実行 } Core 0 Core 1 loop() loop関数ではCore 1のみ使用
Arduino Coreのコード void task0{ //処理 } void setup() { xTaskCreatePinnedToCore(task0,
"Task0", 4096, NULL, 1, NULL, 0); } 処理を特定のコアにPIN 対象関数 コアID Core 0 Core 1 loop() task0() コアにPINする関数
疑問 1. コア分散させると処理能力は向上するのか? 2. 消費電力に変化は? 3. Arduino Uno / Raspberry
PI Zero wと比較して はどうか? 「ハノイの塔」計算で勝負してみる
結果 ESP32 Arduino ラズパイ 1. コアに比例し処理能力向上 2. 最大でArduinoの40倍 3. 最大でRaspberry
PI zero wと互角レベル
消費電力(電流の測定) 注意:低精度 数百円のオモチャ利用 目視で計測 10mA単位が限界
消費電力(電流値) ESP32 Arduino (計測不能) ラズパイ 1. Core 0を使うと電流値が上がる傾向 2. Raspberry
PIより効率的 コア0でのプロセスあり
まとめ 1. コアにプロセスを分散(Core0も使用)すると処理能力も上がるがそれ以 上に消費電力も上がる。 2. Raspberry PIの処理速度と比較しても遜色が無い。こともある。 3. マルチコアの用途は以下の場合など? a.
一刻も早く処理を終了する必要がある場合 b. 2つ以上のプロセスがリソースを取り合わないように c. リアルタイム性が求められるプロセス用に空けておく (*)コードや詳細はQiitaでも共有しています。 https://qiita.com/makotaka/items/dd035f4b2db94f87b63c