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

MPI Performance Evaluation of Raspberry Pi4 Cluster with Android OS

nnao45
March 04, 2022

MPI Performance Evaluation of Raspberry Pi4 Cluster with Android OS

nnao45

March 04, 2022
Tweet

More Decks by nnao45

Other Decks in Technology

Transcript

  1. 0.はじめに 2 目次 1. 背景 3p 2. 先行研究と本研究の狙い 4p 3.

    Raspberry pi4について 5p 4. NAS Parallel Benchmarksについて 6p 5. ANDROID OSへの一般ユーザによるNPB実行環境の構築 7p 6. 実験条件 8p 7. 実験結果 9p 8. 結論 13p 9. 引用 14p 10.付録 15p
  2. 1.背景 • 近年、デジタルサイネージ端末のような小型固定端末の著しい性能向上 • Raspberry Pi-4Bの計算性能: 13.5GFLOPS[1] (Raspberry Pi-4B[3]) •

    ひと昔前のスパコンに匹敵。Deep Blue 11.38GFLOPS[2] (1989) • 小型固定端末の広がる産業界への利用 • デジタルサイネージ [4][5] への利用 • ロボットアームのセンサ [6] 部位への利用 図1. 引用画像[10]:Raspberry Piを利用したデジタルサイネージ 図2. 引用画像[11]:Raspberry Piを利用したデジタルアーム 3
  3. 2. 先行研究と本研究の狙い • 複数の小型固定端末で並列処理を行うようなシステムは産業界、学術界で様々な活用が期待されている • Android OS を搭載したRaspberry Pi への並列性能についての先行研究

    • 杉山ら[7]は無線環境でSPEC MPI ベンチマークを用いてANDROIDクラスタの並列処理性能を計測 • 飯村ら[8] は無線環境にてNAS Parallel Benchmarks[9] のEP テスト、Himeno benchmark、手 書き文字の学習アプリケーション上でANDROIDクラスタの並列処理性能を計測 • 本研究でも非データセンター環境における閉域網において、複数の小型固定端末で大きな計算量の処理が 可能なことを示したい。 • 並列性能を測定する筐体は再現性が高く、産業界での活用もされているAndroid OSを搭載した Raspberry Pi4を採用 • 先行研究からの差分として最新かつ最上位モデルのRaspberry Piを使用し、 Ethernetを用いた通信環境 を用意 4
  4. 3. RASPBERRY PI4について • 英国ラズベリーパイ財団が提供する小型ボードコンピュータ • 本実験ではRaspberry Pi 4 Model

    Bを使用 • 使用機材の仕様[12]を表1に示す CPU ブロードコム BCM2711, Quad-core Cortex-A72 (ARM v8) 64-ビット SoC @1.5GHz メモリ 8GB LPDDR4 memory 有線LAN Gigabit Ethernet ディスク 32GB SD Card 無線LAN 5.0 GHz IEEE 802.11ax wireless 表1. Raspberry Pi 4 Model Bの仕様 図3. Raspberry Pi 4 Model B 5
  5. 4. NAS PARALLEL BENCHMARKSについて • NAS Parallel Benchmarks(以下NPB) • Ames

    Research Center に拠点を置くNASA(National Aeronautics and Space Administration)が開発 • 並列コンピュータ上での実行性能を評価するベンチマークソフト • 各テストに対して計算量毎にテストのサイズを選択が可能 • 本実験では用意されたベンチーマークテストのうち、EP、MG、CG をAサイズのテストサイズで計測を実行 • EP • 指定されたスキームに従い生成された多数のガウス分布に従う擬似乱数を用いて2 次元の統計情報を蓄積する • 通信は殆ど使用されないため、特定のシステムにおける浮動小数点演算性能の達成可能な上限の推定値を提供 • MG • 三次元ポアッソン方程式をマルチグリッド法によって求めるプログラム • 短距離および長距離の高度に構造化された通信の両方をテストするのに適している • CG • 正値対称な疎行列の最小固有値を共役勾配法によって求めるベンチマークであり、不規則な長距離通信をテストし、疎な行列のベクトル乗算を 実行 • CG ベンチマークはMG ベンチマークと同じく P2P 通信の割合が大きなベンチマークテストである[17] 6
  6. Raspberry Pi 4 5. ANDROID OSへの一般ユーザによるNPB実行環境の構築 • 本研究でのMPI実行環境のアーキテクチャを図2に記載 • Lineage

    OS (Version 18.1)[13] を OSを採用。特徴を以下に示す 1. Android 11 の派生OS 2. Raspberry Pi 4 に対応 3. Linux アプリケーションをAndroid ネイティブに実行する事が可能 • 一般ユーザでの MPI 実行環境を構築 • 再現性の担保のため一般ユーザでの並列性能計測を実行 • 通常 Android OS は特権ユーザで無ければinternal storage 上でファイルを実行できない ➔ ターミナルエミュレータ Termux[14] にてexternal storage上にMPI実行環境を構築し、MPI性能計 測を実行 • パッケージマネージャによりGCC等のライブラリのインストールを容易に • Termuxで展開されるファイルシステムはFHS[18]ではないので、パッケージマネージャがうまく動作しない • 解決策1) external storage上でArch Linux[15]を展開 • 解決策2) パッケージマネージャ pacman[16] を利用し、ライブラリのインストールを簡素化 MPI Environment External Storage Hardware Middleware Application 図4. 本実験環境のアーキテクチャ 7
  7. 6. 実験条件 • 本研究では以下の条件で実験を行なった • Raspberry Pi 4の筐体1~4台 • 通信環境

    • Ethernetによる有線接続 • HUB1台で相互接続 • 5.0 GHz IEEE 802.11axによる無線接続 • wifiルータ1台で相互接続 • 本実験にてNPB をノードを跨いで実行する際にはSSH プロトコ ルによりリモートアクセスを実行 • 本実験で使用した Raspberry Pi 4は4 コアCPU であり、 ノードが並列処理に加わった場合、その 4 コア全てに対して計 算の割り当てを実行 図5. 本実験の物理構成図 8
  8. 6. 実験条件 • 筐体を跨いでシステムの並列性能を測定するベンチマークテス トはネットワークIOが大きなボトルネックとなる • そこで事前にtcpdumpを用いて、各テストで発生する通 信量の大きさを測定 • 表2では4台の有線構成のうち1台が各A

    タイプのテストに おいて、どの程度通信を行っているかそのbyte 量の平均 値を表す。 • この結果からテストで使用される通信量は EP ベンチマーク < MG ベンチマーク < CG ベンチマーク であった テストの種類 通信量 EP 5.0811 KB MG 0.1889 GB CG 1.2479 GB 表2. 各NPBテストの測定結果 9
  9. 7. 実験結果〜EPによる実測結果〜 • 特定のシステムにおける浮動小数点演算性能の達成可能な上限の推定値を提供 するテストを実施 • 本資料においてプロセス数およびノード数の表記について • x(n) のように表し、x

    はプロセス数、n はノード数とする。 • 例えば 4(1) は4 プロセスの並列計算を1 ノードで実験を行った事を示す。 • EP ベンチマークの結果 • 図6 から有線無線環境共にプロセス数、ノード数を増やすのに応じてテスト実 行時間が短縮 • これはほとんどネットワーク通信を行わない実験であったため。 • 飯村らの先行研究[2] • 無線環境だけの測定であれば EP ベンチマークのみノードを跨いだ場合でも並 列性能が向上。 図6. EPでの測定結果 10
  10. 7. 実験結果〜MGによる実測結果〜 • 短距離および長距離の高度に構造化された通信による並列性能に対するテス トを実施 • MG ベンチマークの結果 • 図7、図8

    から有線無線環境共にプロセス数、ノード数を増やすのに応じ てテスト実行時間が短縮。 • 無線環境の場合、有線環境と比べ大幅に実行時間が増加 • EPとの違いとしてMGは通信量がとても多く、ネットワークのオーバ ヘッドが乗った事が原因。 • 有線環境は並列性能の劣化はそこまで大きくない • この結果から MG ベンチマーク程度の通信量でP2P 通信を伴う場合は 少なくとも4台まで並列計算を行っても十分に並列性能向は望めるとい う事がわかった。 図7. MGでの測定結果 図8. MGでの測定結果(有線のみ) 11
  11. 7. 実験結果〜CGによる実測結果〜 • 不規則な長距離通信を用いた疎な行列のベクトル乗算を行うテストを実施 • CG ベンチマークの結果 • 図9、10から無線環境ではEPと比べてかなり実行時間が増加 •

    ノード数の増減による実行時間の差異に非常にバラつきが生じた • CGは非常に通信量が大きいため、無線環境では大きく輻輳が生 じた為 • 有線環境でも、並列性能の改善度はEP、MGと比較しても鈍化 • 本結果からNPB のCG ベンチマーク程度の通信量で P2P 通信を行う 場合、2台まで増やす事で並列性能は上がるが、それ以上の台数で並 列計算を行ったとしても、あまり並列性能向上は見込めない • しかし筐体数を増やすのに応じて実行時間は短くなっているため要 件によっては有用 図9. CGでの測定結果 図10. CGでの測定結果(有線のみ) 12
  12. 8. 結論 • 筐体を跨いでもRaspberry Pi4のような小型固定端末を用いた有線構成であれば NPB の MG ベンチマークやCG ベ

    ンチマーク程度の通信を要しても十分に並列性能向上が見込めた。 • この結果から、クラウドやデータセンターに接続できない環境でも、デジタルサイネージやセンサー筐体のネットワーク間で並 列処理を行えば、機械学習や画像処理などを現実的な計算速度で取り行うシステムを構築できることが期待できる。 • 今後の課題 • P2P 通信以外にもブロードキャスト通信やマルチキャスト通信と比較して、どのような通信の場合によりオーバーヘッド が生じるか、更に多くの試験を重ねて評価する事 • 画像処理や動画の形式変換、機械学習など実際のユースケースにて並列処理を測定して、より本環境の有用性を 示す事 13
  13. 9. 引用 [1] https://web.eece.maine.edu/~vweaver/group/green_machines.html [2] https://web.archive.org/web/20090213103245/http://www.top500.org/list/1997/06/300 [3] https://www.raspberrypi.com/products/raspberry-pi-4-model-b/ [4] https://www.yodeck.com/raspberry-pi/

    [5] https://pisignage.com [6] https://techshare.co.jp/product/dobot/magician/?gclid=CjwKCAiAx8KQBhAGEiwAD3EiPzFm_NFy3ufGA65rmS__OhLhFLSRGq6Ss vJ5icpxcc9EfMDtksWkYRoCkM8QAvD_BwE [7] ”杉山 裕紀、大津 金光、大川 猛、横田 隆史、無線接続型Android クラスタにおける MPI 並列プログラムの性能評価”、電子情報通信学会、pp.1〜6、 2018 [8] ”飯村 琢泉、新里 将大、大津 金光、横田隆史、Android クラスタにおける SPEC MPI を用いた並列処理性能の初期評価”、情報処理学会第82 回全国大 会、pp.1-91〜1-92、2020 [9] https://www.nas.nasa.gov/software/npb.html [10] https://advanceffort.com/raspberry-pi4-model-b%E9%9D%99%E6%AD%A2%E7%94%BB%E3%82%B9 %E3%83%A9%E3%82%A4%E3%83%89%E3%82%B7%E3%83%A7%E3%83%BC%EF%BC%86%E5%8B%95%E7%94%BB%E3 %81%AE%E3%83%AB%E3%83%BC%E3%83%97%E5%86%8D%E7%94%9F/ [11] https://www.physical-computing.jp/news-detail/65 [12] https://www.raspberrypi.com/products/raspberry-pi-4-model-b/specifications/ [13] https://lineageos.org [14] https://termux.com [15] https://www.archlinux.jp [16] https://wiki.archlinux.jp/index.php/Pacman [17] ”Ahmad Faraj, Xin Yuan、Communication Characteristics in the NAS Parallel Bench-marks”、International Conference on Par-allel and Distributed Computing Systems、PDCS 2002、1〜6、2002 [18]https://refspecs.linuxfoundation.org/FHS_3.0/fhs/index.html 14