2015 Fiscal Year Research-status Report
計算アクセラレータによる高効率なネットワークサービス基盤の実現
Project/Area Number |
26330143
|
Research Institution | The University of Electro-Communications |
Principal Investigator |
矢崎 俊志 電気通信大学, 情報基盤センター, 助教 (60454138)
|
Project Period (FY) |
2014-04-01 – 2017-03-31
|
Keywords | ウェブアプリケーション / SMP / プロセス並列化 |
Outline of Annual Research Achievements |
本年度は,メモリ共有型マルチプロセッシング(SMP)環境において,昨年度作成した評価用ウェブ・アプリケーションFEHA (Front-end Environment for Hands-on Activities)のマルチコア対応および,大規模利用時の負荷測定実験を行った. FEHAは,簡易なプログラミング演習環境を提供するウェブ・アプリケーションである.大学の講義に適用することで,多数の利用者による性能測定実験を行うことができる.単純な性能測定実験は,ベンチマークプログラムなどでも可能であるが,通信リクエストの発生傾向が実運用と乖離する傾向にあるため,多数の利用者による実運用に近い測定実験は必要である.FEHAは,近年のウェブ・アプリケーション開発で注目されているMEAN(MongoDB, Express, AngularJS, Node.js)スタックと呼ばれる基盤を用いて実装した.この基盤上に実装されたウェブ・アプリケーションは,既存のデファクト・スタンダードであるLAMP (Linux, Apach, MySQL, PHP)スタック上に実装されたものと異なり,単一プロセスによるイベントループ処理により,高負荷時に多数のHTTPリクエストを効率よく処理できるという特徴を持つ. 本年度行ったマルチコア対応においては,複数のプロセスを同時に起動し,各コアに割当てることで,SMP環境上でより高効率な処理を実現した. 昨年度行った単一プロセスによる性能測定実験では,FEHAを大学の講義に適用し,ノートPC程度の性能をもつサーバを用いて,100名を超える学生による性能測定実験を行った.その結果,負荷がサーバの処理能力を超え,正確な性能を測定することができなかった.一方,今年度行ったマルチコア対応により,1時間30分間に,最大で116名の学生が行った少なくとも1,648回のHTTPリクエストを滞り無く処理することができた.
|
Current Status of Research Progress |
Current Status of Research Progress
3: Progress in research has been slightly delayed.
Reason
当初計画においては,MICアクセラレータによるプロセス並列化を行う計画であったが,本年度終了時点においては,メモリ共有型マルチプロセッシング環境におけるプロセス並列化まで完了している. MICアクセラレータ上でのプロセス並列化の原理はSMP環境と基本的に同じであるが,MICアクセラレータ上で動作するLinux OSは,一般的なLinux OSと比べ,機能などが一部制限されている.また,MICアクセラレータ上のプロセッサコアも,通常のCPU (Central Processing Unit)のコアと比べ非力である.さらに,アクセラレータ上のメモリ構成も対称ではない.よって,SMP環境で行ったマルチコア対応の実装をそのままMICアクセラレータ上で動作させることはできない.さらに,MICアクセラレータのアーキテクチャに合致した実装変更を行わなければ,期待する性能が得られない.これまで行ったSMP上での実装をMICアクセラレータ上で動作させるためのポーティング作業および,不足分のライブラリなどを補う機能の実装に時間を要している. あわせて,評価用ウェブ・アプリケーションの実装に用いたフレームワークのアップデート対応に時間を要している.利用しているMEANフレームワークは,近年,様々なサービスの実運用環境に適用さているフレームワークであるため,開発が活発であり,性能面の大きな改善も目立つ.できるだけ公平で実用に即した評価結果を得るため,フレームワークのアップデートにあわせて,ウェブ・アプリケーションの実装変更も必要となっている.
|
Strategy for Future Research Activity |
今後は,これまで行ったSMP上での実装をMICアクセラレータで動作させるためのポーティング作業および関連実装作業を行う.続いて,当初計画にあったGPGPU (General-Purpose Computing on Graphics Processing Units)によるサービスプログラムの改善についても調査,実験を進める. これまで利用してきた開発環境は外部組織から借用した共用物であり,性能測定実験用を行う環境は別に作成する必要がある.このために,MICアクセラレータおよびGPUを搭載するサーバを購入し,測定環境の構築を行う. 性能測定実験においては,ベンチマークを用いた評価と大学における大規模講義を活用した評価の2通りの評価を行う.ベンチマークを用いた評価では再現性のある比較可能な客観的な測定結果を得ることが期待できる.大規模講義を利用した評価実験では,実環境に近い運用データの取得が期待できる. 次年度は,本計画の最終年度にあたるため,国際学会および学術論文誌への採録を目標に,成果をまとめる.研究中に実装したコードや実験データについて,公開可能なものについては公開を検討する.
|
Causes of Carryover |
本年度は,主に物品購入に次年度使用額が生じている.これは,本年度に開発用として購入であったMIC (Many Integrated Cores)アクセラレータボードおよびそれを搭載する開発用計算機と同等の機能を持つ計算機を外部機関から借用することができたために生じた.
|
Expenditure Plan for Carryover Budget |
借用している開発用計算機は,他の研究者と共有されているものであり,来年度計画されている測定実験には利用することができない.測定実験用に,MICアクセラレータボードおよびGPU,それらを搭載可能な実験用計算機を購入する計画である.
|