ニュース
「ペパボ研究所」の研究員が、プログラミング言語Goの国際会議『GopherCon 2019』で研究成果を発表
GMOインターネットグループのGMOペパボ株式会社(代表取締役社長:佐藤 健太郎 以下、GMOペパボ)で、インターネットに関する新技術の創造と実践に取り組む研究開発組織「ペパボ研究所」は、アメリカ・カリフォルニア州で現地時間2019年7月24日(水)~27日(土)に開催されるプログラミング言語Goの国際会議『GopherCon 2019』において、所属する研究員による研究成果を発表します。
本研究は、「ペパボ研究所」所属の三宅 悠介研究員が取り組む研究課題の1つで、フィードバック制御を用いて、Goにおける並行タスク数の最適化を提案するものです。状況によって変化する最適な並行数を継続的に算出し、制御することで、コンピューティングリソースの効率化が期待できます。
発表内容について
<タイトル>
『Optimization for Number of goroutines Using Feedback Control』
Yusuke Miyake(GMO Pepabo, Inc.)
(和訳)
『フィードバック制御を用いたGoroutine起動数の最適化』
三宅 悠介(GMOペパボ株式会社)
<概要>
ソフトウェア開発の世界では、アプリケーションの実行時間を短縮するためにタスクを分割し並行に処理を行う手法が採用されます。Goには、これをより簡潔かつ安全に実現するための「Goroutine(以下、ゴルーチン)」という機能があります。
アプリケーションが安定して高い処理性能を発揮するための最適なタスク数(ゴルーチン起動数)は、アプリケーションの特性やプラットフォーム、その時の負荷の状態に依存するため、開発者の経験則や地道な試行を通して算出しなければなりません。そのため、状況が多岐に渡る場合には、最適なゴルーチン起動数が算出できない、また、算出に多くの時間と工数を要するという問題がありました。
この度発表する『フィードバック制御を用いたゴルーチン起動数の最適化』では、CPU使用率の均衡を指標として、フィードバック制御によりゴルーチン起動数を算出するため、状況によって変化する最適な並行数を継続的に制御することで、コンピューティングリソースの効率化が期待できます。
また、この最適な並行数を動的かつ継続的に求める仕組みは、クラウドコンピューティングにおける仮想サーバー台数の最適化にも応用することができます。今後、有効な指標の選定を通して、レンタルサーバー「ロリポップ!」の「マネージドクラウド」プランや、ココン技術研究室と共同研究を行う「なめらかなセキュリティ」 での活用も検討していきます。
『GopherCon 2019』について
2014年に始まった「GopherCon」は、Go最大の国際会議です。6年目を迎える今年の『GopherCon 2019』では、世界中から1,800名超のGopher(Go使用者)が参加し、200名以上の応募の中から選ばれた36名がスピーカーとして登壇します。そのスピーカーの多くが、世界的な企業でITに携わっています。
プログラミング言語Goについて
Googleによって開発され、2009年にオープンソースとして公開されたGoは、シンプルで信頼性があり、効率的にソフトウェアを構築することができます。高い処理性能を安定して発揮するアプリケーションの実行と、その開発を支援する基盤やツールが提供されているため、様々なアプリケーションに利用されています。
「ペパボ研究所」について
「ペパボ研究所」とは、GMOペパボがこれまで様々なサービスの開発・提供で培ってきたノウハウを活用し、インターネットの可能性を広げる「なめらかなシステム
インターネット基盤技術やAI(機械学習)を主なテーマとし、研究開発から実装、その後の効果測定までを一貫して行い、「事業を差別化できる技術」を生み出す研究開発と情報の発信を行っています。