Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ESP32のマルチコアの能力を試してみた

makotaka
October 23, 2018
970

 ESP32のマルチコアの能力を試してみた

makotaka

October 23, 2018
Tweet

Transcript

  1. 自己紹介 •名前:たかはしまこと •所属:中国系の雲(クラウド)の中 •仕事:ネットワーク関連一般担当 •課外活動:お酒、オートバイ、技術的に興味持ったこと色々  ESP32 〜 Alibaba Cloud IoT

    Platform をMQTT接続(Arduino Core版)   https://qiita.com/makotaka/items/388fa1ee0eb1f0237012  中国にProxy立ててWebコンテンツがどう見えているかを日本から確認してみた    https://qiita.com/makotaka/items/3ccebfb890fd0b17f68b
  2. Arduino Coreのコード void setup() { // 起動時に一度だけ実行 } void loop()

    { // 繰り返しループして実行 } Core 0 Core 1 loop() loop関数ではCore 1のみ使用
  3. Arduino Coreのコード void task0{ //処理 } void setup() { xTaskCreatePinnedToCore(task0,

    "Task0", 4096, NULL, 1, NULL, 0); } 処理を特定のコアにPIN 対象関数 コアID Core 0 Core 1 loop() task0() コアにPINする関数
  4. 疑問 1. コア分散させると処理能力は向上するのか? 2. 消費電力に変化は? 3. Arduino Uno / Raspberry

    PI Zero wと比較して はどうか? 「ハノイの塔」計算で勝負してみる
  5. まとめ 1. コアにプロセスを分散(Core0も使用)すると処理能力も上がるがそれ以 上に消費電力も上がる。 2. Raspberry PIの処理速度と比較しても遜色が無い。こともある。 3. マルチコアの用途は以下の場合など? a.

    一刻も早く処理を終了する必要がある場合 b. 2つ以上のプロセスがリソースを取り合わないように c. リアルタイム性が求められるプロセス用に空けておく (*)コードや詳細はQiitaでも共有しています。 https://qiita.com/makotaka/items/dd035f4b2db94f87b63c