Hastega:Elixirプログラミングにおける線形回帰のSIMD命令による並列化

書誌事項

タイトル別名
  • Hastega: Parallization of Linear Regression Using SIMD Instruction for Elixir Programming

この論文をさがす

抄録

現在,AI・機械学習のソフトウェア開発で用いられるプログラミング言語は,Pythonがデファクトスタンダードである.しかし,Pythonの言語処理系そのものが並列化されていないため,IoTから送られてくる大量のデータをリアルタイムで処理するには,Pyhton単体では力不足である.この問題の解決策として,我々は並列プログラミング言語Elixirに注目している.我々はHastegaというElixirでSIMD命令による並列化やGPGPUを行うための処理系と,それを用いたAI・機械学習のライブラリを研究開発中である.我々の先行研究では整数演算のベンチマークプログラムを最適化して約4~8倍の速度向上を得ることに成功した.本発表では,線形回帰を行うプログラムの最適化を行い,手で記述したElixirからCPUへのSIMD命令を含むネイティブコードを呼び出した場合の性能評価を行った結果,2.3倍~2.6倍の速度向上が得られたことを報告する.今後,ElixirコードからSIMD命令による並列化およびGPGPUを行うコードをHastega処理系により生成できるようにする予定である.

Python is a programming language used for software development of AI and machine learning programming as a de facto standard. However, it cannot process massive data from IoT because it is not parallelized in the language processor level. To solve this problem, we focus on a parallel programming language, Elixir. We have been researching and developing Hastega, which is a language processor to parallelize a Elixir code into SIMD instructions and/or GPGPU code, and libraries of AI and machine learning written in Elixir using it. In our previous works, we have already succeeded in getting the results that it have achieved to improve the speed of the integer operation benchmarks 4-8 times faster. This presentation reports that we optimize a linear regression program written in Elixir, convert it into native code including SIMD instructions of CPU by our hands, evaluate it in the aspect of performance, and get results that it improves the speed 2.3-2.6 times faster. One of our future works is to implement Hastega that compiles Elixir code into parallelized native code of SIMD instructions and/or GPGPU by the language processor.

収録刊行物

詳細情報 詳細情報について

  • CRID
    1050564288341440512
  • NII論文ID
    170000150470
  • NII書誌ID
    AA11464814
  • ISSN
    18827802
  • Web Site
    http://id.nii.ac.jp/1001/00198110/
  • 本文言語コード
    ja
  • 資料種別
    article
  • データソース種別
    • IRDB
    • CiNii Articles

問題の指摘

ページトップへ