Interprocedural slicing using dependence graphs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Properties of data flow frameworks: a unified model
Acta Informatica
Performing data flow analysis in parallel
Proceedings of the 1990 ACM/IEEE conference on Supercomputing
Efficiently computing static single assignment form and the control dependence graph
ACM Transactions on Programming Languages and Systems (TOPLAS)
A comprehensive approach to parallel data flow analysis
ICS '92 Proceedings of the 6th international conference on Supercomputing
Object-oriented metrics: measures of complexity
Object-oriented metrics: measures of complexity
Advanced compiler design and implementation
Advanced compiler design and implementation
Pattern-based design recovery of Java software
SIGSOFT '98/FSE-6 Proceedings of the 6th ACM SIGSOFT international symposium on Foundations of software engineering
Testing object-oriented systems: models, patterns, and tools
Testing object-oriented systems: models, patterns, and tools
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Principles of Program Analysis
Principles of Program Analysis
The Combining DAG: A Technique for Parallel Data Flow Analysis
IEEE Transactions on Parallel and Distributed Systems
A Metrics Suite for Object Oriented Design
IEEE Transactions on Software Engineering
Region Analysis: A Parallel Elimination Method for Data Flow Analysis
IEEE Transactions on Software Engineering
Differences in Algorithmic Parallelism in Control Flow and Call Multigraphs
LCPC '94 Proceedings of the 7th International Workshop on Languages and Compilers for Parallel Computing
Bunch: A Clustering Tool for the Recovery and Maintenance of Software System Structures
ICSM '99 Proceedings of the IEEE International Conference on Software Maintenance
Constructing Precise Object Relation Diagrams
ICSM '02 Proceedings of the International Conference on Software Maintenance (ICSM'02)
Reverse Engineering of the Interaction Diagrams from C++ Code
ICSM '03 Proceedings of the International Conference on Software Maintenance
ICSM '05 Proceedings of the 21st IEEE International Conference on Software Maintenance
Queue - Multiprocessors
Parallel computing on any desktop
Communications of the ACM - ACM's plan to go online first
Validity of the single processor approach to achieving large scale computing capabilities
AFIPS '67 (Spring) Proceedings of the April 18-20, 1967, spring joint computer conference
Fast and precise points-to analysis
Information and Software Technology
Parallel replication-based points-to analysis
CC'12 Proceedings of the 21st international conference on Compiler Construction
Parallel flow-sensitive pointer analysis by graph-rewriting
PACT '13 Proceedings of the 22nd international conference on Parallel architectures and compilation techniques
Time- and space-efficient flow-sensitive points-to analysis
ACM Transactions on Architecture and Code Optimization (TACO)
Hi-index | 0.00 |
Static program analysis supporting software development is often part of edit-compile-cycles, and precise program analysis is time consuming. Points-to analysis is a data-flow-based static program analysis used to find object references in programs. Its applications include test case generation, compiler optimizations and program understanding, and more. Recent increases in processing power of desktop computers comes mainly from multiple cores. Parallel algorithms are vital for simultaneous use of multiple cores. An efficient parallel points-to analysis requires sufficient work for each processing unit. The present paper presents a parallelized points-to analysis of object-oriented programs. It exploits that (1) different target methods of polymorphic calls and (2) independent control-flow branches can be analyzed in parallel. Carefully selected thresholds guarantee that each parallel thread has sufficient work to do and that only little work is redundant with other threads. Our experiments show that this approach achieves a maximum speed-up of 4.43 on 8 cores for a benchmark suite of Java programs.