[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
article

Balanced bipartite graph based register allocation for network processors in mobile and wireless networks

Published: 01 January 2010 Publication History

Abstract

Mobile and wireless networks are the integrant infrastructure of mobile and pervasive computing that aims at providing transparent and preferred information and services for people anytime anywhere. In such environments, end-to-end network bandwidth is crucial to improve user's transparent experience when providing on-demand services such as mobile video playing. As a result, powerful computing power is required for networked nodes, especially for routers. General-purpose processors cannot meet such requirements due to their limited processing ability, and poor programmability and scalability. Intel's network processor IXP is specially designed for fast packet processing to achieve a broad bandwidth. IXP provides a large number of registers to reduce the number of memory accesses. Registers in an IXP are physically partitioned as two banks so that two source operands in an instruction have to come from the two banks respectively, which makes the IXP register allocation tricky and different from conventional ones. In this paper, we investigate an approach for efficiently generating balanced bipartite graph and register allocation algorithms for the dual-bank register allocation in IXPs. The paper presents a graph uniform 2-way partition algorithm (FPT), which provides an optimal solution to the graph partition, and a heuristic algorithm for generating balanced bipartite graph. Finally, we design a framework for IXP register allocation. Experimental results demonstrate the framework and the algorithms are efficient in register allocation for IXP network processors.

References

[1]
A. Agarwal, M. Charikar, K. Makarychev and Y. Makarychev, O(¿log n) approximation algorithms for min UnCut, min 2CNF deletion, and directed cut problems, Proceedings of the 37th STOC. ACM Press, 2005, pp. 573-581.
[2]
A. Durresi and M. Denko, Advances in mobile communications and computing, Mobile Information Systems 5(2) (2009), 101-103.
[3]
A.W. Appel and L. George, Optimal spilling for CISC machines with few registers, Proceedings of the ACM SIGPLAN 2001 Conference on Programming Language Design and Implementation, 2001, pp. 243-253.
[4]
B.C. Cheng, H. Chen and R.Y. Tseng, Context-Aware Gateway for Ubiquitous SIP-Based Services in Smart Homes, Proceedings of International Conference on Hybrid Information Technology (ICHIT '06), 2006, pp. 374-381.
[5]
C.H. Lee, M. Kim and C.I. Park, An efficient k-way graph partitioning algorithm for task allocation, in parallel computing systems, Proceedings of the First International Conference on Systems Integration, 1990, pp. 748-751.
[6]
D.J. Kolson, A. Nicolau, N. Dutt et al., A method for register allocation to loops in multiple register filearchitectures, Proceedings of The 10th International Parallel Processing Symposium (IPPS '96), pp. 28-33.
[7]
F. Hüffner, N. Betzler and R. Niedermeier, Optimal edge deletions for signed graph balancing, Proceedings of the 6th Workshop on Experimental Algorithms (WEA'07), 2007, pp. 297-310.
[8]
F. Zhou, J.C. Zhang, C.Y. Wu and Z.Q. Zhang, A Register Allocation Framework for Banked Register Files with Access Constraints, Proceedings of The 10th Asia-Pacific Computer Systems Architecture Conference, 2005, pp. 269-280.
[9]
G.J. Chaitin, Register allocation and spilling via graph coloring, Proceedings of the SIGPLAN Symposium on Compiler Construction 39(4) (1982), 66-74.
[10]
G. Mino, L. Barolli, F. Xhafa, A. Durresi and A. Koyama, Implementation and performance evaluation of two fuzzy-based handover systems for wireless cellular networks, Mobile Information Systems 5(4) (2009), 339-361.
[11]
G.Y. Lueh, T. Gross and A. Adl-Tabatabai, Fusion-based register allocation, ACM Transactions on Programming Languages and Systems, 2000, pp. 431-470.
[12]
IXP 2800 Network Processor: Programmer's Reference Manual, Dec. 2001. http://www.intel.org.
[13]
J. Abella and A. Gonzãlez, On Reducing Register Pressure and Energy in Multiple-Banked Register Files, Proceedings of IEEE International Conference on Computer Design (ICCD'03), 2003, pp. 14-20.
[14]
J. Ahn, Novel directory service and message delivery mechanism enabling scalable mobile agent communication, Mobile Information Systems 4(4) (2008), 333-349.
[15]
J. Guo, J. Gramm, F. Hüffner, R. Niedermeier and S. Wernicke, Improved fixed-parameter algorithms for two feedback set problems, Proceedings of 9th Workshop on Algorithms and Data Structures (WADS'05), 2005, pp. 158-168.
[16]
J. Fu, O. Hagsand and G. Karlsson, Queuing Behavior and Packet Delays in Network Processor Systems, Proceedings of the 15th International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, 2007, pp. 217-224.
[17]
L. George and M. Blume, Taming the IXP network processor, ACM SIGPLAN Conference on Programming Language Design and Implementation, 2003, pp. 26-37.
[18]
J. Hiser, S. Carr, P. Sweany and S.J. Beaty, Register assignment for software pipelining with partitioned register banks, Proceedings of 14th International Parallel and Distributed Processing Symposium (IPDPS 2000), pp. 211-217.
[19]
J. Park, J. Lee and S. Moon, Register Allocation for Banked Register File, Proceedings of the 2001 ACM SIGPLAN workshop on Optimization of middleware and distributed systems, pp. 39-47.
[20]
J. Wagner and R. Leupers, C compiler design for a network processor, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 20(11) (2001), 1302-1308.
[21]
M. Adiletta, M. Rosenbluth, D. Bernstein et al., The Next Generation of Intel IXP Network Processors, Intel Technology Journal 6(3) (2003), 6-18.
[22]
M.K. Chen, X.F. Li, R. Lian et al., Shangrila: Achieving high performance from compiled network applications while enabling ease of programming, ACM SIGPLAN Conference on Programming Language Design and Implementation, 2005, pp. 224-236.
[23]
M. Safar, H. Sawwan, M. Taha and T. Al-Fadhli, Virtual social networks online and mobile systems, Mobile Information Systems 5(3) (2009), 233-253.
[24]
P. Briggs, K. Cooper and L. Torczon, Rematerialization, Proceedings of ACM SIGPLAN Conference on Programming Language Design and Implementation, 1992, pp. 311-321.
[25]
P. Brink, M. Castelino, D. Meng, C. Rawal and H. Tadepalli, Network processing performance metrics for IA- and IXP-Based Systems, Intel Technology Journal 7(4) (2003), 77-91.
[26]
R. Collins, F. Alegre, X.T. Zhuang and S. Pande, Compiler assisted dynamic management of registers for network processors, Proceedings of 20th International Parallel and Distributed Processing Symposium (IPDPS 2006), 2006, 10 pages.
[27]
R.G. Downey and M.R. Fellows, Parameterized Complexity, Springer, 1999.
[28]
P. Montesinos, W. Liu and J. Torrellas, Using register lifetime predictions to protect register files against soft errors, Proceedings of the 37th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN '07), 2007, pp. 286-296.
[29]
P. Raghavan, A. Lambrechts, M. Jayapala et al., VeryWide Register: An Asymmetric Register File Organization for Low Power Embedded Processors, Proceedings of Design, Automation & Test in Europe Conference & Exhibition (DATE '07), 2007, pp. 1-6.
[30]
S. Izumi, K. Yamanaka, Y. Tokairin et al., Ubiquitous supervisory system based on social contexts using ontology, Mobile Information Systems 5(2) (2009), 141-163.
[31]
S. Jang, S. Carr, P. Sweany and D. Kuras, A Code Generation Framework for VLIW Architectures with Partitioned Register Files, Proceedings of International Conference on Massively Parallel Computing Systems, 1998.
[32]
T. Monreal, A. Gonzalez, M. Valero et al. Delaying physical register allocation through virtual-physical registers, Proceedings of the 32nd Annual International Symposium on Microarchitecture (1999), 186-192.
[33]
X. Zhuang and S. Pande, Resolving Register Bank Conflicts for a Network Processor, Proceedings of the 12th International Conference on Parallel Architectures and Compilation Techniques (PACT 2003), page. 269.
[34]
X. Zhuang and S. Pande, Balancing register allocation across threads for a multithreaded network processor, Proceedings of ACM SIGPLAN 2004 Conference on Programming Language Design and Implementation (PLDI 2004), 2004, pp. 289- 300.
[35]
Z. Liu, H. Che, K. Zheng et al. A trace driven study of the effectiveness of cache mechanism for network processors, Proceedings of International Conference on Wireless Communications, Networking and Mobile Computing 2 (2005), 978-981.

Cited By

View all
  • (2012)Flexible multi-authority attribute-based signature schemes for expressive policyMobile Information Systems10.5555/2595158.25951648:3(255-274)Online publication date: 1-Jul-2012
  • (2011)BGN: A novel scatternet formation algorithm for bluetooth-based sensor networksMobile Information Systems10.1155/2011/7894607:2(93-106)Online publication date: 1-Apr-2011

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Mobile Information Systems
Mobile Information Systems  Volume 6, Issue 1
Mobile and Wireless Networks
January 2010
116 pages
ISSN:1574-017X
EISSN:1875-905X
Issue’s Table of Contents

Publisher

IOS Press

Netherlands

Publication History

Published: 01 January 2010

Author Tags

  1. Register allocation
  2. bipartite graph
  3. mobile and wireless network
  4. network processor
  5. register bank

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 11 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2012)Flexible multi-authority attribute-based signature schemes for expressive policyMobile Information Systems10.5555/2595158.25951648:3(255-274)Online publication date: 1-Jul-2012
  • (2011)BGN: A novel scatternet formation algorithm for bluetooth-based sensor networksMobile Information Systems10.1155/2011/7894607:2(93-106)Online publication date: 1-Apr-2011

View Options

View options

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media