17 papers · ranked by Valyu relevance
God'salvation F. Oguibe, Vinodh Kumaran Jayakumar, Tongping Liu, Andrew Lan + 1 more
Concurrent programming is a core component of Computer Science curricula, yet remains notoriously difficult for students to master due to its inherent complexity and the nondeterministic nature of concurrency bugs such as deadlocks and race conditions. In this work, we present ParaView, an educational tool designed to…
Sabbir Hussain Meraj, Riham Chowdhury, Shimul Debnath, Wei Wang
Debugging data races is a major challenge for students learning parallel programming due to the non-deterministic nature of concurrent execution and the complexity of shared-memory semantics. Recent advances in Large Language Models (LLMs) suggest that they could serve as AI teaching assistants, but the capabilities of…
Yibo Yan, Junzhou He, Seo Jin Park
Interactive debugging is an effective tool for understanding program behavior at the source level, allowing developers to pause execution, navigate the call stack, and inspect runtime state. However, interactive debuggers are designed for single-process execution, and interactive debugging has been widely considered…
Xiang Fu, Shiman Meng, Weiping Zhang, Luanzheng Guo + 5 more
Xiang Fu 1 , Shiman Meng 1 , Weiping Zhang 1 , Luanzheng Guo 2 , Kento Sato 3 , Dong H. Ahn 4 , Ignacio Laguna 5 , Gregory L. Lee 5 , Martin Schulz 6 1 Nanchang Hangkong University, 2 Pacific Northwest National Laboratory, 3 RIKEN R-CCS, 4 NVIDIA, 5 Lawrence Livermore National Laboratory, 6 Technical University of…
Maarten Steevens, Tom Lauwaerts, Christophe Scholliers
Debugging nondeterministic programs is inherently difficult, particularly in microcontroller environments where execution paths can diverge unpredictably due to external sensor inputs. Traditional debugging techniques often fail to capture or reproduce this nondeterministic behavior effectively. Multiverse debugging…
Yunsheng Bai, Haoxing Ren
—Debugging is the dominant cost in modern hardware verification, where assertion failures are among the most frequent and expensive to resolve. While Large Language Models (LLMs) show promise, they often fail to capture the precise, reusable expertise that engineers apply, leading to inaccurate responses. We propose…
Rabimba Karanjai, Lei Xu, Weidong Shi
Unit testing in High-Performance Computing (HPC) is critical but challenged by parallelism, complex algorithms, and diverse hardware. Traditional methods often fail to address non-deterministic behavior and synchronization issues in HPC applications. This paper introduces HPCAgentTester, a novel multiagent Large…
Shiyang Li, Haoyang Chen, Mattia Fazzini, Caiwen Ding
Debugging CUDA programs has long been challenging because failures often arise from subtle interactions among hardware behavior, compiler decisions, memory hierarchy, and asynchronous execution. More importantly, with the rapid expansion of GPU usage across scientific computing, machine learning, graphics, and systems…
Aleksandr Fedchin, Antero Mejr, HARI SUNDAR, Jeffrey S. Foster
The Message Passing Interface (MPI) is widely used in parallel, high-performance programming, yet writing bug-free software that uses MPI remains difficult. We introduce DafnyMPI, a novel, scalable approach to formally verifying MPI software. DafnyMPI allows proving deadlock freedom, termination, and functional…
Ke Du, Anshu Sharma, Liyi Li, William Mansky
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 otherwise correct programs, including both logic errors and race conditions. We present…
Liu, Boyang
—In order to meet the needs of students' programming debugging ability training, this paper designs and implements a data acquisition and analysis system for programming debugging process based on VS Code plug-in,which aims to solve the limitation of traditional assessment methods that are difficult to fully evaluate…
John Hu, Andrew Ash
This research paper describes an exploratory study on the effectiveness of Chat Debugging: troubleshooting malfunctioning analog circuits on breadboards and printed circuit boards (PCB) by undergraduates through conversations with public-domain large language models (LLMs). Through thematic analysis of students'…
Yugo Otani, Sosuke Moriguchi, Takuo Watanabe
Emfrp is a functional reactive programming (FRP) language designed for small-scale embedded systems. Time-varying values are the primary abstraction mechanism in FRP and enable concise descriptions of reactive behavior. In practice, however, Emfrp programs are compiled into C and combined with platform-dependent…
Haymo Kutschbach
This work introduces a self-optimizing virtual processor (VP) for numerical array programs that shifts parallelization from a manual developer task to a cooperative, agent-like runtime mechanism. Instead of relying on centralized task-graph scheduling, static compiler optimization, or explicitly annotated parallel…
Yongbo Chen, Yan Zhu, Rebecca Faust
Visualization has been recognized as a valuable means of supporting debugging by externalizing runtime behavior that would otherwise remain hidden or scattered. However, most visual debugging research has focused on traditional software development settings, leaving the distinct challenges of data-intensive workflows…
Nathan Shaw, Sanjeetha Pennada, Robert M Hierons, Donghwan Shin
As Autonomous Driving Systems (ADS) progress towards commercial deployment, there is an increasing focus on ensuring their safety and reliability. While considerable research has been conducted on testing methods for detecting faults in ADS, very little attention has been paid to debugging in ADS. Debugging is an…
Andrew Ash, John Hu
This work-in-progress research paper explores Chat-Debugging, a novel use case for large language models as an assistant for hardware debugging tasks to improve students' debugging skills. Hardware debugging can be a time-consuming and stressful skill to develop, leading to frustration and other negative emotions.…