Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/223587.223611acmconferencesArticle/Chapter ViewAbstractPublication PagesmetricsConference Proceedingsconference-collections
Article
Free access

Active memory: a new abstraction for memory-system simulation

Published: 01 May 1995 Publication History

Abstract

This paper describes the active memory abstraction for memory-system simulation. In this abstraction---designed specifically for on-the-fly simulation, memory references logically invoke a user-specified function depending upon the reference's type and accessed memory block state. Active memory allows simulator writers to specify the appropriate action on each reference, including "no action" for the common case of cache hits. Because the abstraction hides implementation details, implementations can be carefully tuned for particular platforms, permitting much more efficient on-the-fly simulation than the traditional trace-driven abstraction.Our SPARC implementation, Fast-Cache, executes simple data cache simulations two or three times faster than a highly-tuned trace-driven simulator and only 2 to 7 times slower than the original program. Fast-Cache implements active memory by performing a fast table look up of the memory block state, taking as few as 3 cycles on a SuperSPARC for the no-action case. Modeling the effects of Fast-Cache's additional lookup instructions qualitatively shows that Fast-Cache is likely to be the most efficient simulator for miss ratios between 3% and 40%.

References

[1]
SuperSPARC User's Guide, 1992. Alpha Edition.
[2]
Anita Borg, R. E. Kessler, and David W. Wall. Generation and Analysis of Very Long Address Traces. In Proceedings of the 17th Annual International Symposium on Computer Architecture, pages 270-281, May 1990.
[3]
Robert F. Cmelik and David Keppel. Shade: A Fast Instruction-Set Simulator for Execution Profiling. In Proceed~ngs of the 1993 ACM SIGMETRICS Conference on Measurement and Modeling of Computer Systems, pages 128-137, May 1994.
[4]
Helen Davis, Stephen R. Goldschmidt, and John Hennessy. Multiprocessor Simulation and Tracing Using Tango. In Proceedings of the 199i International Conference on Parallel Processing (Vol. II Software), pages II99-107, August 1991.
[5]
Jeffrey D. Gee, Mark D. Hill, Dionisios N. Pnevmatikatos, and Alan Jay Smith. Cache Performance of the SPEC92 Benchmark Suite. IEEE Micro, 13(4):17-27, August 1993.
[6]
Mark D. Hill and Alan Jay Smith. Evaluating Associativity in CPU Caches. IEEE Transactions on Computers, C-38(12):1612-1630, December 1989.
[7]
Raj Jain. The Art of Computer Systems Performance Analysis: Techniques for Experimental Design, Measurement, Simulation, and Modeling. John Wiley & Sons, 1991.
[8]
Norman P. Jouppi and Steven J. E. Wilton. Tradeoffs in Two-Level On-Chip Caching. In Proceedings of the 21st Annual International Symposium on Computer Architecture, pages 34-45, April 1994.
[9]
James R. Larus. Efficient Program Tracing. IEEE Computer, 26(5):52-61, May 1993.
[10]
James R. Larus and Eric Schnarr. EEL: Machine- Independent Executable Editing. In Proceedings of the SIGPLAN '95 Conference on Programming Language Design and Implementatwn (PLDI), June 1995. To Appear.
[11]
M. Martonosi, A. Gupta, and T. Anderson. Effectiveness of Trace Sampling for Performance Debugging Tools. In Proceedings of the 1993 A CM Szgmetmcs Conference on Measurement and Modeling of Computer Systems, pages 248-259, May 1993
[12]
R. L. Mattson, J. Gecsei, D. R. Schultz, and I. L. Traiger. Evaluation Techniques for Storage Hierarchies. IBM Systems Journal, 9(2):78-117, 1970.
[13]
Ann Marie Grizzaffi Maynard, Colette M. Donnely, and Bret R. Olszewski. Contrasting Characteristics and Cache Performance of Technical and Multi-User Commercial Workloads. In Proceedings of the Sixth Internatwnal Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS VI), pages 145- 156, October 1994.
[14]
A. K. Porterfield. Software Methods for Improvement of Cache Performance on Supercomputer Applicatzons. PhD thesis, Rice University, May 1989. Also available as Rice COMP TR 89-93.
[15]
T. R. Puzak. Analysis of Cache Replacement Algomthms. PhD thesis, University of Massachusetts, February 1985. Ph. D. Thesis, Dept. of Electrical and Computer Engineering.
[16]
Steven K. Reinhardt, Babak Falsafi, and David A Wood. Kernel Support for the Wisconsin Wind Tunnel. In Proceedings of the Usenix Symposzum on Microkernels and Other Kernel Architectures, September 1993.
[17]
Steven K. Reinhardt, Mark D. Hill, James R. Larus, Alvin R. Lebeck, James C. Lewis, and David A. Wood. The Wisconsin Wind Tunnel: Virtual Prototyping of Parallel Computers. In Proceedings of the 1993 A CM S~gmettics Conference on Measurement and Modeling of Computer Systems, pages 48-60, May 1993.
[18]
A. J. Smith. Two Methods for Efficient Analysis of Memory Address Trace Data. IEEE Transactions on Software Engineering, 3(12), January 1977.
[19]
Alan Jay Smith. Line (block) size choice for CPU cache memories. IEEE Transactions on Computers, C- 36(9):1063-1075, September 1987.
[20]
SPEC. SPEC Newsletter, Dec 1991.
[21]
Amitabh Srivastava and Alan Eustace. ATOM A System for Building Customized Program Analysis Tools. In Proceedings of the SIGPLAN '9~ Conference on Programming Language Design and Implementation (PLDI), pages 196-205, June 1994.
[22]
Craig B. Stunkel and W. Kent Fuchs. TRAPEDS: Producing Traces for Multicomputers Via Execution Driven Simulation. In Proceedings of the 1989 A CM SIGMET- RICS Conference on Measurement and Modeling of Computer Systems, pages 70-78, May 1989.
[23]
R. A. Sugumar and S. G. Abraham. Efficient Simulation of Multiple Cache Configurations using Binomial Trees. Technical Report CSE-TR-111-91, 1991.
[24]
Chandramohan A. Thekkath and Henry M. Levy Hardware and Software Support for Efficient Exception Handling. In Proceedings of the Sixth International Conference on Architectural Support for Programming Languages and Operatzng Systems (ASPLOS VI), pages 110- 119, October 1994.
[25]
Richard Uhhg, David Nagle, Trevor Mudge, and Stuart Sechrest. Trap-Driven Simulation with TapewormII. In Proceedings of the S~xth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS VI), pages 132-144, October 1994.
[26]
Robert Wahbe, Steven Lucco, Thomas E. Anderson, and Susan L. Graham. Efficient Software-Based Fault Isolation. In Proceedings of the Fourteenth A CM Symposium on Operating System Principles (SOSP), pages 203-216, December 1993.
[27]
David A. Wood, Mark D. Hill, and R. E. Kessler. A Model for Estimating Trace-Sample Mis,s Ratio~. In Proc~eding~ of the 1991 A CM SIGMETRICS Conference on Measurement and Modehng of Computer Systems, pages 79-89, May 1991.

Cited By

View all
  • (2011)Efficient stack distance computation for priority replacement policiesProceedings of the 8th ACM International Conference on Computing Frontiers10.1145/2016604.2016607(1-10)Online publication date: 3-May-2011
  • (2005)Low overhead program monitoring and profilingProceedings of the 6th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering10.1145/1108792.1108801(28-34)Online publication date: 5-Sep-2005
  • (2005)Low overhead program monitoring and profilingACM SIGSOFT Software Engineering Notes10.1145/1108768.110880131:1(28-34)Online publication date: 5-Sep-2005
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
SIGMETRICS '95/PERFORMANCE '95: Proceedings of the 1995 ACM SIGMETRICS joint international conference on Measurement and modeling of computer systems
May 1995
340 pages
ISBN:0897916956
DOI:10.1145/223587
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 May 1995

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

SIGMETRICS95
Sponsor:

Acceptance Rates

Overall Acceptance Rate 459 of 2,691 submissions, 17%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)122
  • Downloads (Last 6 weeks)20
Reflects downloads up to 21 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2011)Efficient stack distance computation for priority replacement policiesProceedings of the 8th ACM International Conference on Computing Frontiers10.1145/2016604.2016607(1-10)Online publication date: 3-May-2011
  • (2005)Low overhead program monitoring and profilingProceedings of the 6th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering10.1145/1108792.1108801(28-34)Online publication date: 5-Sep-2005
  • (2005)Low overhead program monitoring and profilingACM SIGSOFT Software Engineering Notes10.1145/1108768.110880131:1(28-34)Online publication date: 5-Sep-2005
  • (2003)Processor/Memory Co-Exploration on Multiple Abstraction LevelsProceedings of the conference on Design, Automation and Test in Europe - Volume 110.5555/789083.1022849Online publication date: 3-Mar-2003
  • (2003)Processor/memory co-exploration on multiple abstraction levels2003 Design, Automation and Test in Europe Conference and Exhibition10.1109/DATE.2003.1253730(966-971)Online publication date: 2003
  • (2001)Trace-Driven Memory Simulation: A SurveyPerformance Evaluation: Origins and Directions10.1007/3-540-46506-5_5(97-139)Online publication date: 9-Nov-2001
  • (2000)Wisconsin Wind Tunnel IIIEEE Concurrency10.1109/4434.8951008:4(12-20)Online publication date: 1-Oct-2000
  • (1997)Performance prediction based loop scheduling for heterogeneous computing environmentProceedings of the 1997 ACM symposium on Applied computing10.1145/331697.332324(413-421)Online publication date: 1-Apr-1997
  • (1996)Instruction scheduling and executable editingProceedings of the 29th annual ACM/IEEE international symposium on Microarchitecture10.5555/243846.243898(288-297)Online publication date: 2-Dec-1996
  • (1996)EmbraProceedings of the 1996 ACM SIGMETRICS international conference on Measurement and modeling of computer systems10.1145/233013.233025(68-79)Online publication date: 15-May-1996
  • Show More Cited By

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media