Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article
Free access

The intrinsic bandwidth requirements of ordinary programs

Published: 01 September 1996 Publication History

Abstract

While there has been an abundance of recent papers on hardware and software approaches to improving the performance of memory accesses, few papers have addressed the problem from the program's point of view. There is a general notion that certain programs have larger working sets than others. However, there is no quantitative method for evaluating and comparing the memory requirements of programs.This paper introduces the bandwidth spectrum for characterizing the memory requirements of a program's instruction and data stream. The bandwidth spectrum measures the average bandwidth requirement of a program as a function of available local memory. These measurements are performed under the most idealized conditions of perfect knowledge and perfect memory management. As such, they represent the lower bounds on the memory requirements of programs. We present the bandwidth spectrums for a set of 22 benchmarks and show how they can be used in the comparison of memory requirements and I/O requirement. The bandwidth spectrums also offer a convenient method to weigh the trade-off amongst instruction issue rate, local memory capacity and bandwidth into local memory.Using the bandwidth spectrum, we show that at issue rates of four or less, bandwidth usually scales linearly with the issue rate. At higher issue rates, bandwidth can often scale superlinearly with respect to issue rate. Finally, we also investigate the effects of varying the input sets on the bandwidth spectrums.

References

[1]
T. M. Austin and G. S. Sohi, "Dynamic Dependency Analysis of Ordinary Programs", Proc. ofl9th ISCA, 1992.
[2]
Doug Burger, Alain Kagi, and James R. Goodman, "Memory Bandwidth Limitations of Future Microprocessors", Proc. of 23rd ISCA, May 1996.
[3]
D. Callahan, S Carr, and K. Kennedy, "Improving Register Allocation for Subscripted Variables", Proc. of PLDI, 1990.
[4]
D. CaUahan, K. Kennedy, and A. Porterfield, "Software Prefetching", Proc. of 4th ASPLOS, 1991.
[5]
S. Cart and K. Kennedy, "Scalar Replacement in the Presence of Conditional Control Flow", Software--Practice and Experience, vol. 24(1), Jan. 1994.
[6]
T. Chen and J. Baer, "Reducing Memory Latency via Nonblocking and Prefetching Caches", Proc. of 5th ASPLOS, 1992.
[7]
W.Y. Chen, S. A. Mahlke, P. P. Chang, and W. W. Hwu, "Data Access Microarchitectures for Superscalar Processors with Compiler-Assisted Data Prefetching", Proc. of 25th MICRO, 1991.
[8]
C. Chi and H. Dietz, "Unified Management of Registers and Cache Using Liveness and Cache Bypass", Proc. of PLDI, 1989.
[9]
Digital Equipment Corporation, Alpha 2H64 Microprocessor Hardware Reference Manual, Part Number. EC- QAEQA-TE, 1994.
[10]
D. Gannon, W. Jalby, and K. Gallivan, "Strategies for Cache and Local Memory Management by Global Program Transformation", Journal of Parallel and Distributed Computing, vol 5, 1988.
[11]
G.F. Grohoski, "Machine Organization of the IBM RISC System/6000 Processor", IBM Journal of Research and Development, Vo134, Num 1, January 1990, pp. 37-58.
[12]
L. Gwennap, "Digital Leads the Pack with 21164", Microprocessor Report, Vol 8, Num 12, September 12, 1994.
[13]
J.L. Hennessy and D. A. Patterson, Computer Architecture: A Quantitative Approach, Morgan Kaufmann, 1990.
[14]
A. S. Huang and J. P. Shen, "A Limit Study of Local Memory Requirements Using Value Reuse Profiles", Proc. of 28th Annual Symposium of Microarchitecture, 1995.
[15]
A. C. Klaiber and H. M. Levy, "An Architecture for Software-Controlled Data Prefetching", Proc. of 18th ISCA, 1991.
[16]
G.D. McNiven and E. S. Davidson, "Analysis of Memory Referencing Behavior For Design of Local Memories", Proc. of JSth ISCA, 1988.
[17]
T. C. Mowry, M. S. Lain, and A. Gupta, "Design and Evaluation of a Compiler Algorithm for Prefetching", Proc. of Sth ASPLOS, 1992.
[18]
Anne Roger, and Kai Li, "Softwaro Support for Spemulafivo Loads", Proc. of 5th ASPLOS, 1992.
[19]
A. Srivastava and A. Eustace, "ATOM: A System for Building Customized Program Analysis Tools", Proc. of PLDI, 1994.

Recommendations

Comments

Information & Contributors

Information

Published In

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]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 September 1996
Published in SIGOPS Volume 30, Issue 5

Check for updates

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)105
  • Downloads (Last 6 weeks)19
Reflects downloads up to 16 Oct 2024

Other Metrics

Citations

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