Learning to Parallelize with OpenMP by Augmented Heterogeneous AST Representation
원문 초록
Detecting parallelizable code regions is a challenging task, even for experienced developers. Numerous recent studies have explored the use of machine learning for code analysis and program synthesis, including parallelization, in light of the success of machine learning in natural language processing. However, applying machine learning techniques to parallelism detection presents several challenges, such as the lack of an adequate dataset for training, an effective code representation with rich information, and a suitable machine learning model to learn the latent features of code for diverse analyses. To address these challenges, we propose a novel graph-based learning approach called Graph2Par that utilizes a heterogeneous augmented abstract syntax tree (Augmented-AST) representation for code. The proposed approach primarily focused on loop-level parallelization with OpenMP. Moreover, we create an OMP\_Serial dataset with 18598 parallelizable and 13972 non-parallelizable loops to train the machine learning models. Our results show that our proposed approach achieves the accuracy of parallelizable code region detection with 85\% accuracy and outperforms the state-of-the-art token-based machine learning approach. These results indicate that our approach is competitive with state-of-the-art tools and capable of handling loops with complex structures that other tools may overlook.
함께 살펴볼 논문
공통 태그를 근거로 연결했습니다. 실제 인용 관계나 논문의 우수성을 뜻하지 않습니다.
CLEVER: A Curated Benchmark for Formally Verified Code Generation
Transductively Informed Inductive Program Synthesis
PoE-World: Compositional World Modeling with Products of Programmatic Experts
Enhancing Code Generation via Bidirectional Comment-Level Mutual Grounding
Rewriting Pre-Training Data Boosts LLM Performance in Math and Code
OSVBench: Benchmarking LLMs on Specification Generation Tasks for Operating System Verification
토론
이 논문과 연결된 포럼 글이 아직 없습니다.