論文の概要: MPI-rical: Data-Driven MPI Distributed Parallelism Assistance with
Transformers
- arxiv url: http://arxiv.org/abs/2305.09438v2
- Date: Sun, 20 Aug 2023 04:54:10 GMT
- ステータス: 処理完了
- システム内更新日: 2023-08-22 23:54:42.332457
- Title: MPI-rical: Data-Driven MPI Distributed Parallelism Assistance with
Transformers
- Title(参考訳): MPI-rical:データ駆動型MPI分散並列処理支援
- Authors: Nadav Schneider, Tal Kadosh, Niranjan Hasabnis, Timothy Mattson, Yuval
Pinter, Gal Oren
- Abstract要約: 本稿では,シリアルコードスニペットに基づいて訓練されたトランスフォーマーモデルを用いて,MPI-ricalと呼ばれる新しいMPIコード生成手法を提案する。
MPICodeCorpusデータセットと実世界の科学的コードベンチマークでMPI-ricalを評価し、コード補完と翻訳タスクのパフォーマンスを比較した。
- 参考スコア(独自算出の注目度): 3.2164100882807913
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Automatic source-to-source parallelization of serial code for shared and
distributed memory systems is a challenging task in high-performance computing.
While many attempts were made to translate serial code into parallel code for a
shared memory environment (usually using OpenMP), none has managed to do so for
a distributed memory environment. In this paper, we propose a novel approach,
called MPI-rical, for automated MPI code generation using a transformer-based
model trained on approximately 25,000 serial code snippets and their
corresponding parallelized MPI code out of more than 50,000 code snippets in
our corpus (MPICodeCorpus). To evaluate the performance of the model, we first
break down the serial code to MPI-based parallel code translation problem into
two sub-problems and develop two research objectives: code completion defined
as given a location in the source code, predict the MPI function for that
location, and code translation defined as predicting an MPI function as well as
its location in the source code. We evaluate MPI-rical on MPICodeCorpus dataset
and on real-world scientific code benchmarks and compare its performance
between the code completion and translation tasks. Our experimental results
show that while MPI-rical performs better on the code completion task than the
code translation task, the latter is better suited for real-world programming
assistance, in which the tool suggests the need for an MPI function regardless
of prior knowledge. Overall, our approach represents a significant step forward
in automating the parallelization of serial code for distributed memory
systems, which can save valuable time and resources for software developers and
researchers. The source code used in this work, as well as other relevant
sources, are available at:
https://github.com/Scientific-Computing-Lab-NRCN/MPI-rical
- Abstract(参考訳): 共有および分散メモリシステムのためのシリアルコードのソース間自動並列化は、高性能コンピューティングにおいて難しい課題である。
シリアルコードを共有メモリ環境(通常openmpを使用する)のために並列コードに変換する多くの試みが行われたが、分散メモリ環境ではそうはならなかった。
本稿では,約25,000個のシリアルコードスニペットと対応する5万以上のコードスニペット(MPICodeCorpus)でトレーニングされたトランスフォーマベースモデルを用いて,MPI-ricalと呼ばれる新しいMPIコード生成手法を提案する。
モデルの性能を評価するために、まずシリアルコードをMPIベースの並列コード変換問題に分解し、2つのサブプロブレムに分割し、ソースコード中の与えられた位置として定義されたコード補完、その位置のためのMPI関数の予測、ソースコード内の位置とともにMPI関数の予測として定義されたコード翻訳の2つの研究目標を開発する。
MPICodeCorpusデータセットと実世界の科学的コードベンチマークでMPI-ricalを評価し、コード補完と翻訳タスクのパフォーマンスを比較した。
実験の結果、MPI-ricalはコード翻訳タスクよりもコード補完タスクの方が優れているが、後者は実世界のプログラミング支援に適しており、ツールは事前の知識に関係なくMPI関数の必要性を示唆している。
全体として、我々のアプローチは、分散メモリシステムのためのシリアルコードの並列化を自動化するための重要な一歩であり、ソフトウェア開発者や研究者にとって貴重な時間とリソースを節約できます。
この作業で使用されたソースコードと他の関連するソースは、https://github.com/Scientific-Computing-Lab-NRCN/MPI-rical.comで公開されている。
関連論文リスト
- OMPar: Automatic Parallelization with AI-Driven Source-to-Source Compilation [4.266086505323998]
本稿では,OpenMP pragmasを用いたC/C++コードの並列化を自動化するAI駆動型ツールであるOMParを紹介する。
OMParは、ループ並列化ポテンシャルを評価するOMPifyと、正確なOpenMPパグマを生成する新しい微調整モデルであるMonoCoder-OMPの2つの主要なコンポーネントを通じて、LLM(Large Language Models)を統合している。
論文 参考訳(メタデータ) (2024-09-23T07:39:01Z) - Let the Code LLM Edit Itself When You Edit the Code [50.46536185784169]
underlinetextbfPositional textbfIntegrity textbfEncoding (PIE)
PIEは、標準的な完全再計算手法に比べて計算オーバーヘッドを85%以上削減する。
その結果、PIEは計算オーバーヘッドを標準の完全再計算手法に比べて85%以上削減することを示した。
論文 参考訳(メタデータ) (2024-07-03T14:34:03Z) - MPIrigen: MPI Code Generation through Domain-Specific Language Models [3.5352856644774806]
本研究ではまず,MPIに基づく並列プログラム生成における最先端言語モデルの性能について検討する。
HPCorpusMPI上でMonoCoderを微調整することでMPIベースのプログラム生成のダウンストリームタスクを導入する。
この調整されたソリューションの成功は、並列計算コード生成のための最適化言語モデルにおいて、ドメイン固有の微調整の重要性を浮き彫りにしている。
論文 参考訳(メタデータ) (2024-02-14T12:24:21Z) - Linear-time Minimum Bayes Risk Decoding with Reference Aggregation [52.1701152610258]
最小ベイズリスク(MBR、Minimum Bayes Risk)は、機械翻訳の品質向上を図ったテキスト生成技術である。
これは2次複雑性を持つ実用計量のペアワイズ計算を必要とする。
本稿では,集約された参照表現に対して計算したスコアを用いて,ペアワイズメトリックスコアを近似する。
論文 参考訳(メタデータ) (2024-02-06T18:59:30Z) - AUTOPARLLM: GNN-Guided Automatic Code Parallelization using Large
Language Models [13.514916184776107]
AUTOPARLLMは、並列性を自動的に発見し、シーケンシャルなプログラムの並列バージョンを生成するためのフレームワークである。
NAS Parallel Benchmark と Rodinia Benchmark の2つの有名なベンチマークスイートを11のアプリケーションで評価した。
この結果から, AUTOPARLLM は並列コード生成タスクにおける最先端の LLM モデルの改善に有効であることが示唆された。
論文 参考訳(メタデータ) (2023-10-06T06:51:16Z) - Advising OpenMP Parallelization via a Graph-Based Approach with
Transformers [2.393682571484038]
我々は,OpenMPのプラグマと共有メモリ属性を並列コードで検出し,予測する,OMPifyと呼ばれる新しい手法を提案する。
OMPifyは、ソースコードのグラフベースの表現を利用するTransformerベースのモデルに基づいている。
以上の結果から,OMPifyは汎用および人気の高いChatGPTやPragFormerモデルなど,既存のアプローチよりも優れていることが示された。
論文 参考訳(メタデータ) (2023-05-16T16:56:10Z) - PARTIME: Scalable and Parallel Processing Over Time with Deep Neural
Networks [68.96484488899901]
PartIMEは、データが継続的にストリーミングされるたびにニューラルネットワークを高速化するように設計されたライブラリです。
PartIMEは、ストリームから利用可能になった時点で、各データサンプルの処理を開始する。
オンライン学習において、PartialIMEと古典的な非並列ニューラル計算を経験的に比較するために実験が行われる。
論文 参考訳(メタデータ) (2022-10-17T14:49:14Z) - QParallel: Explicit Parallelism for Programming Quantum Computers [62.10004571940546]
並列量子プログラミングのための言語拡張を提案する。
QParallelは、現在の量子プログラミング言語における並列性に関する曖昧さを取り除く。
並列化によって最も利益を上げるサブルーチンを識別し,並列領域の配置にプログラマを誘導するツールを提案する。
論文 参考訳(メタデータ) (2022-10-07T16:35:16Z) - Learning to Parallelize in a Shared-Memory Environment with Transformers [3.340971990034025]
OpenMPは共有メモリ並列化スキームを実装する最も包括的なAPIである。
多くのソース・トゥ・ソース(S2S)コンパイラが長年にわたって作成され、OpenMPディレクティブをコードに自動的に挿入するタスクをこなしてきた。
本研究では,S2Sコンパイラを完全に置き換えるために,ML技術,特に自然言語処理(NLP)の最近の進歩を活用することを提案する。
論文 参考訳(メタデータ) (2022-04-27T10:39:52Z) - Lossless Compression of Efficient Private Local Randomizers [55.657133416044104]
Locally Differentially Private (LDP) Reportsは、フェデレーション設定における統計と機械学習の収集に一般的に使用されます。
多くの場合、最もよく知られたldpアルゴリズムは、クライアントデバイスからサーバに強制的に大きなメッセージを送信する必要がある。
これにより、LDPアルゴリズムの通信コストの削減に大きく貢献しています。
論文 参考訳(メタデータ) (2021-02-24T07:04:30Z) - MPLP++: Fast, Parallel Dual Block-Coordinate Ascent for Dense Graphical
Models [96.1052289276254]
この研究は、人気のあるDual Block-Coordinate Ascent原則に基づく新しいMAP-solverを導入している。
驚いたことに、性能の低い解法に小さな変更を加えることで、既存の解法を大きなマージンで大幅に上回る新しい解法MPLP++を導出します。
論文 参考訳(メタデータ) (2020-04-16T16:20:53Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。