A Study of the Performance Potential for Dynamic Instruction Hints Selection

  • Rao Fu
  • Jiwei Lu
  • Antonia Zhai
  • Wei-Chung Hsu
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4186)


Instruction hints have become an important way to communicate compile-time information to the hardware. They can be generated by the compiler and the post-link optimizer to reduce cache misses, improve branch prediction and minimize other performance bottlenecks. This paper discusses different instruction hints available on modern processor architectures and shows the potential performance impact on many benchmark programs. Some hints can be effectively selected at compile time with profile feedback. However, since the same program executable can behave differently on various inputs and performance bottlenecks may change on different micro-architectures, significant performance opportunities can be exploited by selecting instruction hints dynamically.


Data Cache Cache Line Normalize Execution Time Performance Bottleneck Memory Instruction 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Alpha architecture handbook (October 1998)Google Scholar
  2. 2.
    Beyls, K., D‘Hollander, E.: Compile-time cache hint generationfor epic architectures. In: EPIC-2 (November 2002)Google Scholar
  3. 3.
    Beyls, K., D’Hollander, E.H.: Generating cache hints for improved program efficiency. J. Syst. Archit. 51(4), 223–250 (2005)CrossRefGoogle Scholar
  4. 4.
    Luk, C.K., et al.: Ispike: a post-link optimizer for the intel®itanium®architecture. In: CGO 2004, pp. 15–26 (2004)Google Scholar
  5. 5.
    Yang, H., et al.: Compiler-assisted cache replacement: Problem formulation and performance evaluation. In: Rauchwerger, L. (ed.) LCPC 2003. LNCS, vol. 2958, pp. 77–92. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  6. 6.
    Lu, J., et al.: Design and implementation of a lightweight dynamic optimization system. JLPT 6(1) (2004)Google Scholar
  7. 7.
    Lu, J., et al.: Dynamic helper threaded prefetching on the sun ultrasparc cmp processor. In: MICRO 2005, pp. 93–104 (2005)Google Scholar
  8. 8.
    Tendler, J.M., et al.: Power4 system microarchitecture (October 2001)Google Scholar
  9. 9.
    Song, Y., et al.: Design and implementation of a compiler framework for helper threading on multi-core processors. In: PaCT 2005, pp. 99–109 (2005)Google Scholar
  10. 10.
    Want, Z., et al.: Using the compiler to improve cache replacement decisions. In: PACT 2002, pp. 199–208 (2002)Google Scholar
  11. 11.
    Hewlett-Packard Company: PA-RISC 1.1 Architecture and Instruction Set Reference Manual, 3rd edn. (February 1994)Google Scholar
  12. 12.
    IBM. PowerPC User Instruction Set Architecture (September 2003)Google Scholar
  13. 13.
    Intel Corp. Intel®Itanium®2 Processor Reference Manual for Software Development and Optimization (May 2004)Google Scholar
  14. 14.
    Intel Corp. Intel®IA-64 Architecture Software Developer’s Manual (January 2006)Google Scholar
  15. 15.
    Kane, G.: PA-RISC 2.0 Architecture. Prentice-Hall, Englewood Cliffs (1995)Google Scholar
  16. 16.
    Kurpanek, G., et al.: Pa7200: a pa-risc processor with integrated high performance mp bus interface. In: Compcon Spring 1994, Digest of Papers, pp. 375–382 (1994)Google Scholar
  17. 17.
    Lee, R., Huck, J.: 64-bit and multimedia extensions in the pa-risc 2.0 architecture. In: Compcon 1996, pp. 152–160 (February 1996)Google Scholar
  18. 18.
    SPARC International, Inc. The SPARC Architecture Manual Version 9 (1994)Google Scholar
  19. 19.
    Standard Performance Evaluation Corp.,
  20. 20.
    Sun Microsystems Inc. UltraSPARC®III Processor User’s Manual (January 2004)Google Scholar
  21. 21.
    Sun Microsystems Inc. UltraSPARC®IV+ Processor User’s Manual Supplement (October 2005)Google Scholar
  22. 22.
    Sun Studio Compilers and Tools,

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Rao Fu
    • 1
  • Jiwei Lu
    • 2
  • Antonia Zhai
    • 1
  • Wei-Chung Hsu
    • 1
  1. 1.Department of Computer Science and EngineeringUniversity of Minnesota 
  2. 2.Scalable Systems GroupSun Microsystems Inc. 

Personalised recommendations