skip to main content
10.1145/1278480.1278681acmconferencesArticle/Chapter ViewAbstractPublication PagesdacConference Proceedingsconference-collections
Article

Program mapping onto network processors by recursive bipartitioning and refining

Authors Info & Claims
Published:04 June 2007Publication History

ABSTRACT

Mapping packet processing applications onto embedded network processors (NP) is a challenging task due to the unique constraints of NP systems and the characteristics of network application domains. A remarkable difference with general multiprocessor task scheduling is that NPs are often programmed into a hybrid parallel and pipeline topology.

In this paper, we introduce a multilevel balancing and refining algorithm for NP program mapping. We use a divide-and-conquer approach to recursively bipartition the task graph into disjoint subdomains. At each level of bipartition, the processing resources will be co-allocated so that an estimation of throughput can be derived. The bipartition continues until the code of the tasks can be fit into the instruction memory of processing elements. Then the algorithm iteratively refines the solution by migrating tasks from the bottleneck stage to other stages. The performance of our scheme is evaluated with a suite of NP benchmarks using SUIF/Machine SUIF compiler and Intel IXA Architecture Tool. The throughput improvement is significant: average throughput is increased by 20%, and the maximum is 108%.

References

  1. Intel IXP2XXX Product Line of Network Processors, Intel Corporation.Google ScholarGoogle Scholar
  2. J. Yao, Y. Luo, L. Bhuyan and R. Iyer "Optimal Network Processor Topologies for Efficient Packet Processing," IEEE Globecom, 2005.Google ScholarGoogle Scholar
  3. M. I. Gordon, W. Thies, and S. Amarasinghe "Exploiting Coarse-Grained Task, Data, and Pipeline Parallelism in Stream Programs," ASPLOS, 2006 Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. J. Dai, B. Huang, L. Li and L. Harrison, "Automatically Partitioning Packet Processing Applications for Pipelined Architectures," PLDI '05, pp. 237--248, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. M. K. Chen, X. F. Li, R. Lian, J. H. Lin, L. Liu, T. Liu and R. Ju "Shangri-La: Achieving High Performance from Compiled Network Applications while Enabling Ease of Programming," PLDI '05, pp. 224--236, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Steven S. Muchnick, "Advanced compiler design and implementation," Morgan Kaufmann Publishers Inc., 1997 Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. N. Weng and T. Wolf "Pipelining vs. Multiprocessors --- Choosing the Right Network Processor System Topology," ANCHOR in conjunction with ISCA 2004.Google ScholarGoogle Scholar
  8. SUIF Compiler System, Stanford University.Google ScholarGoogle Scholar
  9. Machine-SUIF, Harvard University.Google ScholarGoogle Scholar
  10. F. Ercal, J. Ramanujam and P. Sadayappan, "Task Allocation onto a Hypercube by Recursive Mincut Bipartitioning", in Journal of Parallel and Distributed Computing pp.35--44, Vol. 10, No. 1, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. H. H. Yang and D. F. Wong, "Efficient Network Flow Based Min-cut Balanced Partitioning" in Proc. of the 1994 IEEE/ACM international conference on Computer-aided design pp.50--55, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. A. V. Goldberg and R. E. Tarjan, "A New Approach to the Maximum Flow Problem" in Proc. 18th ACM STO, pp. 136--146, 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. B. W. Kernighan and S. Lin, "An efficient Heuristic Procedure for Partitioning Graphs," Bell Syst. Tech. J., pp. 291--308, Vol. 49, No. 2, 1970.Google ScholarGoogle Scholar
  14. R. Ramaswamy and T. Wolf. "PacketBench: A Tool for Workload Characterization of Network Processing," WWC-6, pp.42--50, 2003.Google ScholarGoogle Scholar
  15. G. Memik, W. H. Mangione-Smith and W. D. Hu "NetBench: A Benchmarking Suite for Network Processor," ICCAD, pp.39-, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein, "Introduction to Algorithms," MIT Press, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Program mapping onto network processors by recursive bipartitioning and refining

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        DAC '07: Proceedings of the 44th annual Design Automation Conference
        June 2007
        1016 pages
        ISBN:9781595936271
        DOI:10.1145/1278480

        Copyright © 2007 ACM

        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: 4 June 2007

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • Article

        Acceptance Rates

        DAC '07 Paper Acceptance Rate152of659submissions,23%Overall Acceptance Rate1,770of5,499submissions,32%

        Upcoming Conference

        DAC '24
        61st ACM/IEEE Design Automation Conference
        June 23 - 27, 2024
        San Francisco , CA , USA

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader