English
Related papers

Related papers: Loo.py: From Fortran to performance via transforma…

200 papers

Overlays are virtual, re-configurable architectures that overlay on top of physical FPGA fabrics. An overlay that is specialized for an application, or a class of applications, offers both fast reconfiguration and minimized performance…

Programming Languages · Computer Science 2020-09-03 Hongbo Rong

Expertise in programming traditionally assumes a binary novice-expert divide. Learning resources typically target programmers who are learning programming for the first time, or expert programmers for that language. An underrepresented, yet…

Software Engineering · Computer Science 2018-08-29 Nischal Shrestha , Titus Barik , Chris Parnin

All major weather and climate applications are currently developed using languages such as Fortran or C++. This is typical in the domain of high performance computing (HPC), where efficient execution is an important concern. Unfortunately,…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-11-15 Enrique G. Paredes , Linus Groner , Stefano Ubbiali , Hannes Vogt , Alberto Madonna , Kean Mariotti , Felipe Cruz , Lucas Benedicic , Mauro Bianco , Joost VandeVondele , Thomas C. Schulthess

Quantum computers have leaped from the theoretical realm into a race to large-scale implementations. This is due to the promise of revolutionary speedups, where achieving such speedup requires designing an algorithm that harnesses the…

Convolutional neural networks (CNNs) are becoming very successful and popular for a variety of applications. The Loki many-core processor architecture is very promising for achieving specialised hardware performance and efficiency while…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-06-05 Philippos Papaphilippou

Python demonstrates lower performance in comparison to traditional high performance computing (HPC) languages such as C, C++, and Fortran. This performance gap is largely due to Python's interpreted nature and the Global Interpreter Lock…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-05-16 César Piñeiro , Juan C. Pichel

Radiative transfer modelling is part of many astrophysical simulations and is used to make synthetic observations and to assist analysis of observations. We concentrate on the modelling of the radio lines emitted by the interstellar medium.…

Instrumentation and Methods for Astrophysics · Physics 2021-01-04 M. Juvela

Reconfigurable computing refers to the use of processors, such as Field Programmable Gate Arrays (FPGAs), that can be modified at the hardware level to take on different processing tasks. A reconfigurable computing platform describes the…

Hardware Architecture · Computer Science 2007-05-23 Darran Nathan , Kelvin Lim Mun Kit , Kelly Choo Hon Min , Philip Wong Jit Chin , Andreas Weisensee

Scalable learning for planning research generally involves juggling between different programming languages for handling learning and planning modules effectively. Interpreted languages such as Python are commonly used for learning routines…

Artificial Intelligence · Computer Science 2024-11-04 Dillon Z. Chen

As an important goal of high-performance computing, the concept of performance portability has been around for many years. As the failure of Moore's Law, it is no longer feasible to improve computer performance by simply increasing the…

Hardware Architecture · Computer Science 2023-08-29 Weifeng Liu , Linping Wu , Xiaowen Xu , Yuren Wang

The functional programming paradigm has a long and storied history, with its beginnings in the Lambda Calculus. In recent decades, pure functional languages such as Haskell have been shown to be highly effective in producing robust software…

Computers and Society · Computer Science 2025-12-04 Rajshekhar Sunderraman

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

Transpilation, or code translation, aims to convert source code from one programming language (PL) to another. It is beneficial for many downstream applications, from modernizing large legacy codebases to augmenting data for low-resource…

Software Engineering · Computer Science 2026-04-21 Shangyu Li , Juyong Jiang , Meibo Ren , Sizhe Zhong , Huiri Tan , Yunhao Gou , Xu Han , Chun Yong Chong , Yun Peng , Jiasi Shen

We present a systematic, algebraically based, design methodology for efficient implementation of computer programs optimized over multiple levels of the processor/memory and network hierarchy. Using a common formalism to describe the…

Mathematical Software · Computer Science 2008-03-18 Lenore R. Mullin , James E. Raynolds

High-level scripting languages are in many ways polar opposites to GPUs. GPUs are highly parallel, subject to hardware subtleties, and designed for maximum throughput, and they offer a tremendous advance in the performance achievable for a…

Software Engineering · Computer Science 2013-04-23 Andreas Klöckner , Nicolas Pinto , Bryan Catanzaro , Yunsup Lee , Paul Ivanov , Ahmed Fasih

We present POLO --- a C++ library for large-scale parallel optimization research that emphasizes ease-of-use, flexibility and efficiency in algorithm design. It uses multiple inheritance and template programming to decompose algorithms into…

Optimization and Control · Mathematics 2018-10-09 Arda Aytekin , Martin Biel , Mikael Johansson

Computer programming textbooks and software documentations often contain flowcharts to illustrate the flow of an algorithm or procedure. Modern OCR engines often tag these flowcharts as graphics and ignore them in further processing. In…

Computer Vision and Pattern Recognition · Computer Science 2025-01-30 Shreya Shukla , Prajwal Gatti , Yogesh Kumar , Vikash Yadav , Anand Mishra

To design peer-to-peer (P2P) software systems is a challenging task, because of their highly decentralized nature, which may cause unexpected emergent global behaviors. The last fifteen years have seen many P2P applications to come out and…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-07-14 Michele Amoretti , Francesco Zanichelli

Many algorithms for congestion control, scheduling, network measurement, active queue management, security, and load balancing require custom processing of packets as they traverse the data plane of a network switch. To run at line rate,…

Networking and Internet Architecture · Computer Science 2016-02-02 Anirudh Sivaraman , Mihai Budiu , Alvin Cheung , Changhoon Kim , Steve Licking , George Varghese , Hari Balakrishnan , Mohammad Alizadeh , Nick McKeown

The emergence of foundational models and generative artificial intelligence (GenAI) is poised to transform productivity in scientific computing, especially in code development, refactoring, and translating from one programming language to…

Software Engineering · Computer Science 2025-11-10 Akash Dhruv , Anshu Dubey