Skip to main content

A Register Allocation Framework for Banked Register Files with Access Constraints

  • Conference paper
Advances in Computer Systems Architecture (ACSAC 2005)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3740))

Included in the following conference series:

Abstract

Banked register file has been proposed to reduce die area, power consumption, and access time. Some embedded processors, e.g. Intel’s IXP network processors, adopt this organization. However, they expose some access constraints in ISA, which complicates the design of register allocation. In this paper, we present a register allocation framework for banked register files with access constraints for the IXP network processors. Our approach relies on the estimation of the costs and benefits of assigning a virtual register to a specific bank, as well as that of splitting it into multiple banks via copy instructions. We make the decision of bank assignment or live range splitting based on analysis of these costs and benefits. Compared to previous works, our framework can better balance the register pressure among multiple banks and improve the performance of typical network applications.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Huang, J.H.: Network processor design. In: 5th International Conference on ASIC 2003, Proceedings, vol. 1(21-24), pp. 26–33 (2003)

    Google Scholar 

  2. Tseng, J.H., Asanović, K.: Banked multiported register files for high-frequency superscalar microprocessors. In: Proceedings of the 30th annual international symposium on Computer architecture (2003)

    Google Scholar 

  3. Cruz, J.L., González, A., Valero, M., Topham, N.P.: Multiple-banked register file architectures. In: Proceedings of 27th annual international symposium on Computer Architecture, pp. 316–325 (2000)

    Google Scholar 

  4. Balasubramoniany, R., Dwarkadasy, S., Albonesi, D.H.: Reducing the complexity of the register file in dynamic superscalar processors. In: 34th International Symposium on Microarchitecture (MICRO-34), pp. 237–248 (2001)

    Google Scholar 

  5. Intel: Intel IXP2400 Network Processor Hardware Reference Manual. Intel Corporation (2003)

    Google Scholar 

  6. Chow, F.C., Hennessy, J.L.: The priority-based coloring approach to register allocation. ACM Transactions on Programming Languages and Systems (TOPLAS) 12 (1990)

    Google Scholar 

  7. Intel: Intel IXP2400/IXP2800 Network Processor Programmers Reference Manual. Intel Corporation (2003)

    Google Scholar 

  8. Chen, M.K., Li, X.F., Lian, R., Lin, J.H., Liu, L., Liu, T., Ju, R.: Shangri-la: achieving high performance from compiled network applications while enabling ease of programming. In: PLDI 2005: Proceedings of the 2005 ACM SIGPLAN conference on Programming language design and implementation, pp. 224–236. ACM Press, New York (2005)

    Chapter  Google Scholar 

  9. Zhuang, X., Pande, S.: Resolving register bank con icts for a network processor. In: Proceedings of the 12th International Conference on Parallel Architectures and Compilation Techniques(PACT 2003) (2003)

    Google Scholar 

  10. George, L., Appel, A.W.: Iterated register coalescing. In: POPL 1996: Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, pp. 208–218. ACM Press, New York (1996)

    Chapter  Google Scholar 

  11. Farkas, K.I.: Memory-System Design Considerations For Dynamically-Scheduled Microprocessors. PhD thesis, University of Toronto (1997)

    Google Scholar 

  12. Sedgewick, R.: Algorithms in C++ Parts 5: Graph Algorithms. Addison Wesley/Pearson (2001)

    Google Scholar 

  13. Stoer, M., Wagner, F.: A simple min-cut algorithm. Journal of the ACM, JACM (1997)

    Google Scholar 

  14. Hiser, J., Carr, S.: Global register partitioning. In: International Conference on Parallel Architectures and Compilation Techniques (2000)

    Google Scholar 

  15. Jang, S., Carr, S., Sweany, P., Kuras, D.: A code generation framework for vliw architectures with partitioned register banks. In: Third International Conference on Massively Parallel Computing Systems (1998)

    Google Scholar 

  16. Cho, J., Paek, Y., Whalley, D.: Efficient register and memory assignment of non-orthogonal architectures via graph coloring and mst algorithms. In: LCTES- SCOPES (2002)

    Google Scholar 

  17. Keyngnaert, P., Demoen, B., de Sutter, B., de Bus, B., et al.: Con ict graph based allocation of static objects to memory banks. In: Semantics, Program Analysis, and Computing Environments for Memory Management (2001)

    Google Scholar 

  18. Johnson, E.J., Kunze, A.R.: IXP 2400/2800 Programming: The Complete Micro- engine Coding Guide. Intel Press (2003)

    Google Scholar 

  19. George, L., Blume, M.: Taming the IXP network processor. In: PLDI (2003)

    Google Scholar 

  20. Park, J., Lee, J.H., Moon, S.M.: Register allocation for banked register file. In: Language, Compiler and Tool Support for Embedded Systems, LCTES, pp. 39-47 (2001)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Zhou, F., Zhang, J., Wu, C., Zhang, Z. (2005). A Register Allocation Framework for Banked Register Files with Access Constraints. In: Srikanthan, T., Xue, J., Chang, CH. (eds) Advances in Computer Systems Architecture. ACSAC 2005. Lecture Notes in Computer Science, vol 3740. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11572961_22

Download citation

  • DOI: https://doi.org/10.1007/11572961_22

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-29643-0

  • Online ISBN: 978-3-540-32108-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics