iBet uBet web content aggregator. Adding the entire web to your favor.
iBet uBet web content aggregator. Adding the entire web to your favor.



Link to original content: https://unpaywall.org/10.1023/A:1008119209479
Source-to-Source Instrumentation for the Optimization of an Automatic Reading System | The Journal of Supercomputing Skip to main content
Log in

Source-to-Source Instrumentation for the Optimization of an Automatic Reading System

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Recording address traces that occur during a program execution is a significant technique for computer performance analysis. This paper describes a software method for address tracing via the instrumentation of C based languages. All program transformations are performed at the language level. This approach, which differs from the usual methods, allows portable and flexible program instrumentation. This tool has been developed to make easier the memory optimization of LIREChèques, an automatic bank check reading system. Two applications of the tool are clearly identified: (i) data cache use optimization, (ii) dynamic memory use optimization.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. A. Agarwal, R. L. Sites, and M. Horowitz. ATUM: a new technique for capturing address traces using microcode. in Proceedings of the 13th International Symposium on Computer Architecture, pp. 119-127, June, 1986.

  2. T. Ball and J. R. Larus. Optimally profiling and tracing programs, ACM Transactions on Programming Languages and Systems (TOPLAS), 16:1319-1360, 1994.

    Google Scholar 

  3. F. Bodin, P. Beckman, D. Gannon, S. Narayana, and S. Srinivas. Sage++: a class library for building Fortran 90 and C++ restructuring tools. Technical Report, CICA, Indiana University, 1992.

  4. F. Bodin, P. Beckman, D. Gannon, J. Gotwals, S. Narayana, S. Srinivas, and B. Winnicka. Sage++: an object-oriented toolkit and class library for building Fortran and C++ restructuring tools. OON-SKI, 1994.

  5. D. Callahan, K. Kennedy, and A. Portefield. Software prefetching. Proceedings of the Fourth International Conference on Architectural Support for Programming Langages and Operating Systems, April 1991.

  6. P. Cao, E. W. Felten, A. R. Karlin, and K. Li. Implementation and performance of integrated application-controlled _le caching, prefetching and disk scheduling. TOCS 14:311-343, 1996.

    Google Scholar 

  7. J. B. Chen. A simulation based study of TLB performance. Proceedings of the 19th Annual International Symposium on Computer Architecture, pp. 114-123, May 1992.

  8. D. W. Clark and J. S. Emer. Performance of the VAX 11/780 translation buffer: simulation and measurement. ACM Transactions on Computer Systems, 3:270-301, 1985.

    Google Scholar 

  9. C. Ferdinand, F. Martin, and R. Wilhelm. Applying compiler techniques to cache behavior prediction. Proceedings of the ACM SIGPLAN 1997 Workshop on Languages, Compilers, and Tools for Real-Time Systems, pp. 37-46, 1997.

  10. J. K. Flanagan, B. Nelson, J. Archibald, and K. Grimsrud. BACH: BYU address collection hardware; the collection of complete traces. Proceedings of the 6th International Conference on Modeling Techniques and Tools for Computer Performance Evaluation, September 1992.

  11. D. Gannon, W. Jalby, and K. Gallivan. Strategies for cache and local memory management by global program transformation. Journal of Parallel and Distributed Computing, 5:587-616, 1988.

    Google Scholar 

  12. J. D. Gee, M. D. Hill, D. N. Pnevmatikatos, and A. J. Smith. Cache performance of the SPEC benchmark suite. Technical Report, University of Wisconsin-Madison, 1991.

  13. J. Griffioen and R. Appleton. Performance measurements of automatic prefetching. Proceedings of the ISCA International Conference on Parallel and Distributed Computing Systems, September 1995.

  14. K. Grimsrud, J. Archibald, M. Ripley, K. Flanagan, and B. Nelson. BACH: a hardware monitor for tracing microprocessor-based systems. Microprocessors and Microsystems, 17, October 1993.

  15. J. L. Hennessy and D. A. Patterson. Computer Architecture: A Quantitative Approach. Morgan Kaufmann, San Mateo, Calif. 1990.

    Google Scholar 

  16. L. Heutte, P. Pereira, O. Bougeois, J. V. Moreau, B. Plessis, P. Courtellemont, and Y. Lecourtier. Multi-bank check recognition system: consideration on the numeral amount recognition module. Special Issue on Automatic Bankcheck Processing. International Journal of Pattern Recognition and Artificial Intelligence, 11:595-618, 1997.

    Google Scholar 

  17. M. D. Hill. Aspects of cache memory and instruction buffer performance. Ph.D. thesis, University of California at Berkeley, Computer Sciences Division, November 1987.

  18. M. D. Hill. A case for direct-mapped caches. IEEE Computer, 21:25-40, 1988.

    Google Scholar 

  19. M. D. Hill, J. R. Larus, A. R. Lebeck, M. Talluri, and D. Wood. Wisconsin architectural research tools set. CAN 93.

  20. B. R. Hunt. ACS version: 2.0, Parallel Arch Research Laboratory, 1997.

  21. A. Kishon, P. Hudak, and C. Consel. Monitoring semantics: a formal framework for specifying, implementing and reasoning about execution monitors. Proceedings of the SIGPLAN'91 Conference on Programming Language Design and Implementation, pp. 338-352, June 1991.

  22. M. Kumar. Measuring parallelism in computation-intensive scientific/engineering applications. IEEE Transactions on Computers, 37:1088-1098, 1988.

    Google Scholar 

  23. J. R. Larus. Abstract execution: a technique for efficiently tracing programs. Software Practice and Experience, 20:1241-1258, 1990.

    Google Scholar 

  24. J. R. Larus. Efficient program tracing. IEEE Computer, 26:52-61, 1993.

    Google Scholar 

  25. J. R. Larus and E. Schnarr. EEL: machine-independent executable editing. Proceedings of the ACM SIGPLAN'95 Conference on Programming Language Design and Implementation (PLDI), ACM SIGPLAN Notices, vol. 30, pp. 291-300, June 1995.

    Google Scholar 

  26. A. R. Lebeck and D. A. Wood. Cache profiling and the SPEC benchmarks: a case study. IEEE Computer, 27:15-26, 1994.

    Google Scholar 

  27. Y. A. Liu and G. Gomez. Automatic accurate time-band analysis for high-level languages. Proceedings of the ACM SIGPLAN'98 Workshop on Languages, Compilers, and Tools for Embedded Systems, Lectures Notes in Computer Science, vol. 1474, pp. 31-40, Springer-Verlag, New York, 1998.

    Google Scholar 

  28. B. Mohr, D. Brown, and A. Malony. TAU: a portable parallel program analysis environment for pC++. Proceedings of CONPAR'94, VAPP VI, University of Linz, Austria, LNCS 854, pp. 29-40, September 1994.

    Google Scholar 

  29. P. Pereira, L. Heutte, O. Bougeois, J. V. Moreau, B. Plessis, P. Courtellemont, and Y. Lecourtier. Numeral amount recognition on multi-bank checks. Proceedings of the 13th International Conference on Pattern Recognition (ICPR'96), Vienna, Austria, vol. 3, pp. 165-169, August 25–30, 1996.

    Google Scholar 

  30. P. Pereira. Optimization of a bank check reading system. Ph.D. thesis, University of Rouen, France, February 1999 (in French).

    Google Scholar 

  31. C. A. Prete. Cachesim: a graphical software environment to support the teaching of computer system with cache memories. Proceedings of the 7th SEI Conference on Software Engineering Education, San Antonio, pp. 317-327, Springer-Verlag, New York, 1994.

    Google Scholar 

  32. A. J. Smith. Cache memories. ACM Computer Surveys, 14:473-530, 1982.

    Google Scholar 

  33. L. Unnikrishnan, S. D. Stoller, and Y. A. Liu. Automatic accurate stack space and heap space analysis for high-level languages. Technical Report, Computer Science Department, Indiana University, April 2000.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to P. Pereira.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Pereira, P., Heutte, L. & Lecourtier, Y. Source-to-Source Instrumentation for the Optimization of an Automatic Reading System. The Journal of Supercomputing 18, 89–104 (2001). https://doi.org/10.1023/A:1008119209479

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1008119209479

Navigation