English
Related papers

Related papers: Design and Use of Loop-Transformation Pragmas

200 papers

Directives for the compiler such as pragmas can help programmers to separate an algorithm's semantics from its optimization. This keeps the code understandable and easier to optimize for different platforms. Simple transformations such as…

Programming Languages · Computer Science 2018-11-05 Michael Kruse , Hal Finkel

Pragmas for loop transformations, such as unrolling, are implemented in most mainstream compilers. They are used by application programmers because of their ease of use compared to directly modifying the source code of the relevant loops.…

Programming Languages · Computer Science 2019-01-31 Michael Kruse , Hal Finkel

Heterogeneous systems are becoming increasingly prevalent. In order to exploit the rich compute resources of such systems, robust programming models are needed for application developers to seamlessly migrate legacy code from today's…

Initially developed for natural language processing (NLP), Transformers are now widely used for source code processing, due to the format similarity between source code and text. In contrast to natural language, source code is strictly…

Machine Learning · Computer Science 2021-06-25 Nadezhda Chirkova , Sergey Troshin

OpenMP is the de facto API for parallel programming in HPC applications. These programs are often computed in data centers, where energy consumption is a major issue. Whereas previous work has focused almost entirely on performance, we here…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-09-12 Henrik Valter , Axel Karlsson , Miquel Pericàs

OpenMP is a popular parallelization framework that lets users transform sequential code into parallel code with a few simple annotations. Unfortunately, it is also easy to inadvertently introduce errors by adding OpenMP pragmas into…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-05-28 Ke Du , Anshu Sharma , Liyi Li , William Mansky

This paper presents a study of using large language models (LLMs) in modifying existing code. While LLMs for generating code have been widely studied, their role in code modification remains less understood. Although "prompting" serves as…

Software Engineering · Computer Science 2025-08-05 Ningzhi Tang , Emory Smith , Yu Huang , Collin McMillan , Toby Jia-Jun Li

Heterogeneity has become a mainstream architecture design choice for building High Performance Computing systems. However, heterogeneity poses significant challenges for achieving performance portability of execution. Adapting a program to…

Programming Languages · Computer Science 2023-03-17 Giorgis Georgakoudis , Konstantinos Parasyris , Chunhua Liao , David Beckingsale , Todd Gamblin , Bronis de Supinski

This paper presents prompt design techniques for software engineering, in the form of patterns, to solve common problems when using large language models (LLMs), such as ChatGPT to automate common software engineering activities, such as…

Software Engineering · Computer Science 2023-03-15 Jules White , Sam Hays , Quchen Fu , Jesse Spencer-Smith , Douglas C. Schmidt

Software developers must adapt to keep up with the changing capabilities of platforms so that they can utilize the power of High- Performance Computers (HPC), including exascale systems. OpenMP, a directive-based parallel programming model,…

High-level synthesis, source-to-source compilers, and various Design Space Exploration techniques for pragma insertion have significantly improved the Quality of Results of generated designs. These tools offer benefits such as reduced…

Software Engineering · Computer Science 2025-03-04 Stéphane Pouget , Louis-Noël Pouchet , Jason Cong

Large Language Models (LLMs) are nowadays extensively used for various types of software engineering tasks, primarily code generation. Previous research has shown how suitable prompt engineering could help developers in improving their code…

Prompt engineering is an increasingly important skill set needed to converse effectively with large language models (LLMs), such as ChatGPT. Prompts are instructions given to an LLM to enforce rules, automate processes, and ensure specific…

GPU runtimes are historically implemented in CUDA or other vendor specific languages dedicated to GPU programming. In this work we show that OpenMP 5.1, with minor compiler extensions, is capable of replacing existing solutions without a…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-10-06 Shilei Tian , Jon Chesterfield , Johannes Doerfert , Barbara Chapman

Tools for rewriting, refactoring and optimizing code should be fast and correct. Large language models (LLMs), by their nature, possess neither of these qualities. Yet, there remains tremendous opportunity in using LLMs to improve code. We…

Machine Learning · Computer Science 2024-10-14 Chris Cummins , Volker Seeker , Jordi Armengol-Estapé , Aram H. Markosyan , Gabriel Synnaeve , Hugh Leather

Making a Prolog program more efficient by transforming its source code, without changing its operational semantics, is not an obvious task. It requires the user to have a clear understanding of how the Prolog compiler works, and in…

Programming Languages · Computer Science 2007-11-01 Francois Gobert , Baudouin Le Charlier

Large Language Models (LLMs) are rapidly transforming software engineering, with coding assistants embedded in an IDE becoming increasingly prevalent. While research has focused on improving the tools and understanding developer…

Pretrained Transformers achieve state-of-the-art performance in various code-processing tasks but may be too large to be deployed. As software development tools often incorporate modules for various purposes which may potentially use a…

Computation and Language · Computer Science 2022-12-13 Shamil Ayupov , Nadezhda Chirkova

Large language models (LLMs) underpin applications in code generation, mathematical reasoning, and agent-based workflows. In practice, systems access LLMs via commercial APIs or open-source deployments, and the model landscape (e.g., GPT,…

Computation and Language · Computer Science 2025-12-02 Yaxuan Wang , Quan Liu , Zhenting Wang , Zichao Li , Wei Wei , Yang Liu , Yujia Bao

High-performance computing are based more and more in heterogeneous architectures and GPGPUs have become one of the main integrated blocks in these, as the recently emerged Mali GPU in embedded systems or the NVIDIA GPUs in HPC servers. In…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-07-28 Albert Saà-Garriga , David Castells-Rufas , Jordi Carrabina
‹ Prev 1 2 3 10 Next ›