Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data.

Manos Renieris

dblp:00/1334 · DBLP profile ↗
← Back
5ranked-venue papers
3as first author
0since 2021 · last 2005
—ORCID · none

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 5 · 3 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Software engineering, system software, and programming languages
4 papers
Program analysis · 49% Debugging and program repair · 43% Runtime systems and virtual machines · 5%
Computer architecture, parallel and distributed computing, and storage systems
1 paper
Performance modeling and evaluation · 100%

Topics — the 9 heaviest of 10, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Program analysis
dynamic analysis
0.122003
Fault Localization With Nearest Neighbor Queries · ASE 2003
Encoding Program Executions · ICSE 2001
Program analysis › dynamic analysis
program tracing
0.112005
Arithmetic program paths · ESEC/SIGSOFT FSE 2005
Debugging and program repair
fault localization
0.012003
Fault Localization With Nearest Neighbor Queries · ASE 2003
Debugging and program repair › fault localization
spectrum-based fault localization
0.012003
Fault Localization With Nearest Neighbor Queries · ASE 2003
Program analysis › dynamic analysis
execution trace representation
0.012001
Encoding Program Executions · ICSE 2001
Runtime systems and virtual machines › managed runtime
java runtime
0.012005
Demonstration of JIVE and JOVE: Java as it happens · ICSE 2005
Performance modeling and evaluation
trace analysis
0.012005
Arithmetic program paths · ESEC/SIGSOFT FSE 2005
Performance modeling and evaluation
workload characterization
0.012005
Arithmetic program paths · ESEC/SIGSOFT FSE 2005
Software maintenance and evolution
program comprehension
0.012001
Encoding Program Executions · ICSE 2001

Methods — techniques the papers use, named apart from their topics

branch prediction · 0.1arithmetic coding · 0.1program tracing · 0.1dynamic visualization · 0.1similarity measure · 0.0nearest neighbor queries · 0.0run-length encoding · 0.0finite state automata · 0.0directed acyclic graph · 0.0context-free grammar encoding · 0.0
YearPublicationVenuePosition
2005 Demonstration of JIVE and JOVE: Java as it happens
abstract
Dynamic software visualization is designed to provide programmers with insights as to what the program is doing. Most current visualizations either use program traces to show information about prior runs, slow the program down substantially, show only minimal information, or force the programmer to indicate when to turn visualizations on or off. We have developed a dynamic Java visualizer that provides a statement-level view of a Java program in action with low enough overhead so that it can be used almost all the time by programmers to understand what their program is doing while it is doing it.
Steven P. Reiss, Manos Renieris
ICSE2
2005 Arithmetic program paths
abstract
We present Arithmetic Program Paths, a novel, efficient way to compress program control-flow traces that reduces program bit traces to less than a fifth of their original size while being fast and memory efficient. In addition, our method supports online, selective tracing and compression of individual conditionals, trading off memory usage and compression rate. We achieve these properties by recording only the directions taken by conditional statements during program execution, and using arithmetic coding for compression. We provide the arithmetic coder with a probability distribution for each conditional that we obtain using branch prediction techniques. We implemented the technique and experimented on several SPEC 2000 programs. Our method matches the compression rate of state-of-the-art tools while being an order of magnitude faster.
Manos Renieris, Shashank Ramaprasad, Steven P. Reiss
ESEC/SIGSOFT FSE1
2004 Elided conditionals
abstract
Many software testing and automated debugging tools rely on structural coverage techniques. Such tools implicitly assume a relation between individual control-flow choices made in conditional statements during a program run and the outcome of the run. In this paper, we develop the notion of elided choices that, viewed in isolation, have no impact on the outcome of the program. We call the conditionals that make such choices elided conditionals. We develop an experimental framework for discovering elided conditionals. From looking at three programs of varying complexity under this framework, we discovered that elided conditionals do occur, sometimes with alarming frequency. We discuss the impact of elided conditionals on various forms of dynamic analysis and suggest future work that would extend elision to general expressions.
Manos Renieris, Sébastien Chan-Tin, Steven P. Reiss
PASTE1
2003 Fault Localization With Nearest Neighbor Queries
abstract
We present a method for performing fault localization using similar program spectra. Our method assumes the existence of a faulty run and a larger number of correct runs. It then selects according to a distance criterion the correct run that most resembles the faulty run, compares the spectra corresponding to these two runs, and produces a report of "suspicious" parts of the program. Our method is widely applicable because it does not require any knowledge of the program input and no more information from the user than a classification of the runs as either "correct" or "faulty". To experimentally validate the viability of the method, we implemented it in a tool, Whither, using basic block profiling spectra. We experimented with two different similarity measures and the Siemens suite of 132 programs with injected bugs. To measure the success of the tool, we developed a generic method for establishing the quality of a report. The method is based on the way an "ideal user" would navigate the program using the report to save effort during debugging. The best results obtained were, on average, above 50%, meaning that our ideal user would avoid looking half of the program.
Manos Renieris, Steven P. Reiss
ASE1
2001 Encoding Program Executions
abstract
Dynamic analysis is based on collecting data as the program runs. However, raw traces tend to be too voluminous and too unstructured to be used directly for visualization and understanding. We address this problem in two phases: the first phase selects subsets of the data and then compacts it, while the second phase encodes the data in an attempt to infer its structure. Our major compaction/selection techniques include gprof-style N-depth call sequences, selection based on class, compaction based on time intervals, and encoding the whole execution as a directed acyclic graph. Our structure inference techniques include run-length encoding, context free grammar encoding, and the building of finite state automata.
Steven P. Reiss, Manos Renieris
ICSE2