Posts by Collection

portfolio

publications

Expression Isolation of Compiler-Induced Numerical Inconsistencies in Heterogeneous Code

Published in International Conference on High Performance Computing, 2023

Ciel is a tool that pinpoints compiler-induced numerical inconsistencies in heterogeneous programs using a precision-enhancement and recursive bisection strategy, achieving high accuracy and efficiency over prior methods across synthetic, benchmark, and real-world scientific applications.

Recommended citation: Dolores Miao, Ignacio Laguna, and Cindy Rubio-González. 2023. Expression Isolation of Compiler-Induced Numerical Inconsistencies in Heterogeneous Code. In ISC (Lecture Notes in Computer Science, Vol. 13948). Springer, 381–401.
Download Paper | Download Bibtex

MUPPET: Optimizing Performance in OpenMP via Mutation Testing

Published in The 15th International Workshop on Programming Models and Applications for Multicores and Manycores, 2024

MUPPET is a source-level mutation testing framework for OpenMP programs that discovers and evaluates code modifications to improve performance, enabling developers to identify optimization opportunities overlooked by compiler IR-based techniques and achieving speedups in 70% of tested benchmarks and proxy applications.

Recommended citation: Dolores Miao, Ignacio Laguna, Giorgis Georgakoudis, Konstantinos Parasyris, and Cindy Rubio-González. 2024. MUPPET: Optimizing Performance in OpenMP via Mutation Testing. In Proceedings of the 15th International Workshop on Programming Models and Applications for Multicores and Manycores. Association for Computing Machinery, New York, NY, USA, 22–31.
Download Paper | Download Bibtex

Input Range Generation for Compiler-Induced Numerical Inconsistencies

Published in The 38th ACM International Conference on Supercomputing, 2024

CIGEN is a tool that detects input ranges likely to trigger compiler-induced numerical inconsistencies by combining input partitioning, coverage-guided sampling, clustering, and optimization, achieving a 53.4% improvement over prior methods on GNU Scientific Library functions and enabling deeper analysis of inconsistency causes.

Recommended citation: Dolores Miao, Ignacio Laguna, and Cindy Rubio-González. 2024. Input Range Generation for Compiler-Induced Numerical Inconsistencies. In Proceedings of the 38th ACM International Conference on Supercomputing. Association for Computing Machinery, New York, NY, USA, 201–212.
Download Paper | Download Bibtex

An Automated OpenMP Mutation Testing Framework for Performance Optimization

Published in Journal of Parallel Computing, 2024

MUPPET is a source-level mutation testing framework for OpenMP programs that identifies and evaluates code changes to uncover performance defects and optimization opportunities overlooked by compiler IR-based methods, using multiple search algorithms to find mutations that yield speedups in 75.9% of tested benchmarks and proxy applications while preserving correctness.

Recommended citation: Dolores Miao, Ignacio Laguna, Giorgis Georgakoudis, Konstantinos Parasyris, Cindy Rubio-González, An automated OpenMP mutation testing framework for performance optimization, Parallel Computing, Volume 121, 2024, 103097, ISSN 0167-8191.
Download Paper | Download Bibtex

FloatGuard: Efficient Whole-Program Detection of Floating-Point Exceptions in AMD GPUs

Published in The 34th ACM International Symposium on High-Performance Parallel and Distributed Computing, 2025

FloatGuard is the first framework for efficiently detecting floating-point exceptions in HIP programs on AMD GPUs, combining hardware register access, hybrid instrumentation, and debugger-guided execution to overcome AMD’s trapping limitations, detect exceptions with low overhead, and reveal key differences from NVIDIA GPU behaviors.

Recommended citation: Dolores Miao, Ignacio Laguna, and Cindy Rubio-González. 2023. FloatGuard: Efficient Whole-Program Detection of Floating-Point Exceptions in AMD GPUs. In Proceedings of the 34th ACM International Symposium on High-Performance Parallel and Distributed Computing.

talks

Tools to Detect and Diagnose Floating-Point Errors in Heterogeneous Computing Hardware and Software

Published:

More information here
As assistant, I will present FloatGuard, a unique tool that detects exceptions in AMD GPUs. The tutorial is aimed at helping programmers avoid exception bugs; for this, we will demonstrate our tools on simple examples with seeded bugs. Attendees may optionally install and run our tools. The tutorial also allocates question/answer time to address real situations faced by the attendees.

teaching

Teaching experience 1

Undergraduate course, University 1, Department, 2014

This is a description of a teaching experience. You can use markdown like any other post.

Teaching experience 2

Workshop, University 1, Department, 2015

This is a description of a teaching experience. You can use markdown like any other post.