StreamIt [28] is a high-level programming language intended for the development of large-scale and high-performance streaming applications that are characterized by the processing of data streams by modular structures. The StreamIt Development Tool (SDT) [25] is designed to aid the coding and simultaneous codeand graph-based debugging and visualizing of programs written in StreamIt. The goal is to provide a graphical programming environment that simply and intuitively conveys the hierarchical and structured nature of the StreamIt language by visually interpreting the dynamic behavior and graph representation of a StreamIt application. Consequently, the SDT provides utilities for program creation and code editing, compilation and launch support, breakpoints and code stepping, general debugging infrastructure, help support, stream graph examination and navigation, and stream data display, modification, and tracking. A user study evaluating the SDT uncovered several problems and areas of improvement that need to be addressed before this tool can approach its goals. Assessment of the SDT’s efficacy in its current state is inconclusive—the SDT demonstrates both the ability to improve and hinder a user’s debugging ability. Facilitating effective coding and debugging techniques and developing for scalability are critical elements in improving the SDT’s effectiveness. Thesis Supervisor: Saman Amarasinghe Title: Associate Professor
[1]
Robert Stephens,et al.
A survey of stream processing
,
1997,
Acta Informatica.
[2]
Tim Smithers,et al.
Research issues
,
1994,
Formal Design Methods for CAD.
[3]
Vijay K. Madisetti,et al.
A debugger RTOS for embedded systems
,
2001,
Proceedings 27th EUROMICRO Conference. 2001: A Net Odyssey.
[4]
Brent Hailpern,et al.
Software debugging, testing, and verification
,
2002,
IBM Syst. J..
[5]
Eugene H. Spafford,et al.
Efficient Debugging with Slicing and Backtracking
,
1990
.
[6]
Robert Jan Ridder.
Programming digital signal processors with high-level languages
,
2000
.
[7]
Rudy Lauwereins,et al.
PDG: A process-level debugger for concurrent programs in the GRAPE parallel programming environment
,
1995,
Future Gener. Comput. Syst..
[8]
William Thies,et al.
StreamIt: A Language for Streaming Applications
,
2002,
CC.
[9]
Elliot L. Waingold.
SIFt: A Compiler for Streaming Applications
,
2000
.