Effective techniques for understanding and improving data structure usage
Turing Award winner Niklaus Wirth famously noted, `Algorithms + Data Structures = Programs', and it follows that data structures should be carefully considered for effective applicat...
Main Author: | |
---|---|
Other Authors: | |
Format: | Others |
Language: | en_US |
Published: |
Georgia Institute of Technology
2013
|
Subjects: | |
Online Access: | http://hdl.handle.net/1853/49101 |
Summary: | Turing Award winner Niklaus Wirth famously noted, `Algorithms + Data Structures
= Programs', and it follows that data structures should be carefully considered
for effective application development. In fact, data structures are the main
focus of program understanding, performance engineering, bug detection, and
security enhancement, etc.
Our research is aimed at providing effective techniques for analyzing and
improving data structure usage in fundamentally new approaches: First, detecting
data structures; identifying what data structures are used within an application
is a critical step toward application understanding and performance engineering.
Second, selecting efficient data structures; analyzing data structures' behavior
can recognize improper use of data structures and suggest alternative data
structures better suited for the current situation where the application runs.
Third, detecting memory leaks for data structures; tracking data accesses with
little overhead and their careful analysis can enable practical and accurate
memory leak detection.
Finally, offloading time-consuming data structure operations; By leveraging a
dedicated helper thread that executes the operations on the behalf of the
application thread, we can improve the overall performance of the application. |
---|