English
Related papers

Related papers: Toward Efficient Interactions between Python and N…

200 papers

Call graph construction is the foundation of inter-procedural static analysis. PYCG is the state-of-the-art approach for constructing call graphs for Python programs. Unfortunately, PyCG does not scale to large programs when adapted to…

Software Engineering · Computer Science 2024-09-11 Kaifeng Huang , Yixuan Yan , Bihuan Chen , Zixin Tao , Xin Peng

Pythonic code is idiomatic code that follows guiding principles and practices within the Python community. Offering performance and readability benefits, Pythonic code is claimed to be widely adopted by experienced Python developers, but…

Software libraries implement APIs that deliver reusable functionalities. To correctly use these functionalities, software applications must satisfy certain correctness policies, for instance policies about the order some API methods can be…

Software Engineering · Computer Science 2020-10-14 Oliviero Riganelli , Daniela Micucci , Leonardo Mariani

The use of Python is noticeably growing among the scientific community, and Astronomy is not an exception. The power of Python consists of being an extremely versatile high-level language, easy to program that combines both traditional…

Instrumentation and Methods for Astrophysics · Physics 2018-07-16 Daniel M. Faes

Performance analysis is a critical step in the oft-repeated, iterative process of performance tuning of parallel programs. Per-process, per-thread traces (detailed logs of events with timestamps) enable in-depth analysis of parallel program…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-05-15 Abhinav Bhatele , Rakrish Dhakal , Alexander Movsesyan , Aditya K. Ranjan , Onur Cankur

Python has become a dominant programming language for emerging areas like Machine Learning (ML), Deep Learning (DL), and Data Science (DS). An attractive feature of Python is that it provides easy-to-use programming interface while allowing…

Distributed, Parallel, and Cluster Computing · Computer Science 2022-08-26 Nawras Alnaasan , Arpan Jain , Aamir Shafi , Hari Subramoni , Dhabaleswar K Panda

In the rapidly evolving software development landscape, Python stands out for its simplicity, versatility, and extensive ecosystem. Python packages, as units of organization, reusability, and distribution, have become a pressing concern,…

Software Engineering · Computer Science 2025-09-05 Haowei Quan , Junjie Wang , Xinzhe Li , Terry Yue Zhuo , Xiao Chen , Xiaoning Du

Within the last years, Python became more prominent in the scientific community and is now used for simulations, machine learning, and data analysis. All these tasks profit from additional compute power offered by parallelism and…

Distributed, Parallel, and Cluster Computing · Computer Science 2021-10-26 Andreas Gocht , Robert Schöne , Jan Frenzel

As modern FPGAs evolve to include more het- erogeneous processing elements, such as ARM cores, it makes sense to consider these devices as processors first and FPGA accelerators second. As such, the conventional FPGA develop- ment…

Software Engineering · Computer Science 2017-05-16 Andrew G. Schmidt , Gabriel Weisz , Matthew French

Applications are increasingly written as dynamic workflows underpinned by an execution framework that manages asynchronous computations across distributed hardware. However, execution frameworks typically offer one-size-fits-all solutions…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-10-18 J. Gregory Pauloski , Klaudiusz Rydzy , Valerie Hayot-Sasson , Ian Foster , Kyle Chard

Coverage analysis is widely used but can suffer from high overhead. This overhead is especially acute in the context of Python, which is already notoriously slow (a recent study observes a roughly 30x slowdown vs. native code). We find that…

Software Engineering · Computer Science 2023-06-01 Juan Altmayer Pizzorno , Emery D Berger

As Moore's Law gains diminish, software performance and efficiency become increasingly vital. Optimizing code efficiency is challenging, even for professional programmers. However, related research remains relatively scarce, and rigorously…

Software Engineering · Computer Science 2024-08-26 Yue Pan , Xiuting Shao , Chen Lyu

Detecting feature interactions is imperative for accurately predicting performance of highly-configurable systems. State-of-the-art performance prediction techniques rely on supervised machine learning for detecting feature interactions,…

Software Engineering · Computer Science 2018-01-23 Sergiy Kolesnikov , Norbert Siegmund , Christian Kästner , Sven Apel

In the field of data science, and for academics in general, the Python programming language is a popular choice, mainly because of its libraries for storing, manipulating, and gaining insight from data. Evidence includes the versatile set…

In modern software development, Python third-party libraries play a critical role, especially in fields like deep learning and scientific computing. However, API parameters in these libraries often change during evolution, leading to…

Software Engineering · Computer Science 2025-12-24 Shuai Zhang , Guanping Xiao , Jun Wang , Huashan Lei , Gangqiang He , Yepang Liu , Zheng Zheng

Profiling tools (also known as profilers) play an important role in understanding program performance at runtime, such as hotspots, bottlenecks, and inefficiencies. While profilers have been proven to be useful, they give extra burden to…

Software Engineering · Computer Science 2025-08-06 Zhuoran Liu

This paper introduces the design and implementation of PyOptInterface, a modeling language for mathematical optimization embedded in Python programming language. PyOptInterface uses lightweight and compact data structure to bridge…

Mathematical Software · Computer Science 2024-05-17 Yue Yang , Chenhui Lin , Luo Xu , Wenchuan Wu

Python has become the prime language for application development in the Data Science and Machine Learning domains. However, data scientists are not necessarily experienced programmers. While Python lets them quickly implement their…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-08-24 Oscar Castro , Pierrick Bruneau , Jean-Sébastien Sottet , Dario Torregrossa

Deep learning frameworks have often focused on either usability or speed, but not both. PyTorch is a machine learning library that shows that these two goals are in fact compatible: it provides an imperative and Pythonic programming style…

As applications grow in capability, they also grow in complexity. This complexity in turn gets pushed into modules and libraries. In addition, hardware configurations become increasingly elaborate, too. These two trends make understanding,…

Software Engineering · Computer Science 2018-03-21 Ronny Brendel , Bert Wesarg , Ronny Tschüter , Matthias Weber , Thomas Ilsche , Sebastian Oeste