Get 20M+ Full-Text Papers For Less Than $1.50/day. Start a 14-Day Trial for You or Your Team.

Learn More →

An efficient representation for sparse sets

An efficient representation for sparse sets An Efficient Representation PRESTON BRIGGS and LINDA TORCZON Rice University for Sparse Sets Sets are a fundamental abstraction widely used in programming. Many representations are possible, each offering different advantages. We describe a representation that supports conadd-member, and delete-member. Additionally, it supstant-time implementations of clear-set, iterator, allowing enumeration of all the members of a set in time ports an et%cient forall proportional to the cardinality of the set. We present detailed comparisons of the costs of operations on our representation and on a bit vector representation. Additionally, we give experimental results showing the effectiveness of our representation in a practical application: construction of an interference graph for use during graph-coloring register allocation. While this representation was developed to solve a specific problem arising in register allocation, we have found it useful throughout our work, especially when implementing efficient analysis techniques for large programs. However, the new representation is not a panacea. The operations required for a particular set should be carefully considered before this representation, or any other representation, is chosen. Categories and Subject Descriptors: E.1 [Data]: Data Structures; E.2 [Data]: Data Storage Representations General Terms: Algorithms Additional Key Words and Phrases: Compiler implementation, tations, set operations register http://www.deepdyve.com/assets/images/DeepDyve-Logo-lg.png ACM Letters on Programming Languages and Systems (LOPLAS) Association for Computing Machinery

Loading next page...
 
/lp/association-for-computing-machinery/an-efficient-representation-for-sparse-sets-ptNeXAZYRF

References

References for this paper are not available at this time. We will be adding them shortly, thank you for your patience.

Publisher
Association for Computing Machinery
Copyright
Copyright © 1993 by ACM Inc.
ISSN
1057-4514
DOI
10.1145/176454.176484
Publisher site
See Article on Publisher Site

Abstract

An Efficient Representation PRESTON BRIGGS and LINDA TORCZON Rice University for Sparse Sets Sets are a fundamental abstraction widely used in programming. Many representations are possible, each offering different advantages. We describe a representation that supports conadd-member, and delete-member. Additionally, it supstant-time implementations of clear-set, iterator, allowing enumeration of all the members of a set in time ports an et%cient forall proportional to the cardinality of the set. We present detailed comparisons of the costs of operations on our representation and on a bit vector representation. Additionally, we give experimental results showing the effectiveness of our representation in a practical application: construction of an interference graph for use during graph-coloring register allocation. While this representation was developed to solve a specific problem arising in register allocation, we have found it useful throughout our work, especially when implementing efficient analysis techniques for large programs. However, the new representation is not a panacea. The operations required for a particular set should be carefully considered before this representation, or any other representation, is chosen. Categories and Subject Descriptors: E.1 [Data]: Data Structures; E.2 [Data]: Data Storage Representations General Terms: Algorithms Additional Key Words and Phrases: Compiler implementation, tations, set operations register

Journal

ACM Letters on Programming Languages and Systems (LOPLAS)Association for Computing Machinery

Published: Mar 1, 1993

There are no references for this article.