• DocumentCode
    1070671
  • Title

    A Novel Cache Architecture and Placement Framework for Packet Forwarding Engines

  • Author

    Rajan, Kaushik ; Govindarajan, Ramaswamy

  • Author_Institution
    Microsoft Res., Bangalore, India
  • Volume
    58
  • Issue
    8
  • fYear
    2009
  • Firstpage
    1009
  • Lastpage
    1025
  • Abstract
    Packet forwarding is a memory-intensive application requiring multiple accesses through a trie structure. With the requirement to process packets at line rates, high-performance routers need to forward millions of packets every second with each packet needing up to seven memory accesses. Earlier work shows that a single cache for the nodes of a trie can reduce the number of external memory accesses. It is observed that the locality characteristics of the level-one nodes of a trie are significantly different from those of lower level nodes. Hence, we propose a heterogeneously segmented cache architecture (HSCA) which uses separate caches for level-one and lower level nodes, each with carefully chosen sizes. Besides reducing misses, segmenting the cache allows us to focus on optimizing the more frequently accessed level-one node segment. We find that due to the nonuniform distribution of nodes among cache sets, the level-one nodes cache is susceptible to high conflict misses. We reduce conflict misses by introducing a novel two-level mapping-based cache placement framework. We also propose an elegant way to fit the modified placement function into the cache organization with minimal increase in access time. Further, we propose an attribute preserving trace generation methodology which emulates real traces and can generate traces with varying locality. Performance results reveal that our HSCA scheme results in a 32 percent speedup in average memory access time over a unified nodes cache. Also, HSCA outperforms IHARC, a cache for lookup results, with as high as a 10-fold speedup in average memory access time. Two-level mapping further enhances the performance of the base HSCA by up to 13 percent leading to an overall improvement of up to 40 percent over the unified scheme.
  • Keywords
    cache storage; storage allocation; attribute preserving trace generation methodology; cache organization; conflict misses; heterogeneously segmented cache architecture; memory access; memory-intensive application; nonuniform distribution; packet forwarding engine; trie structure; two-level mapping-based cache placement framework; Bandwidth; Data structures; Delay; Engines; Helium; Internet; Memory architecture; Multithreading; Random access memory; Routing; Stress; Wire; Yarn; Special-purpose and application-based systems; cache architectures; design; experimentation; network processors; performance; synthetic trace generation; trace driven simulation.;
  • fLanguage
    English
  • Journal_Title
    Computers, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0018-9340
  • Type

    jour

  • DOI
    10.1109/TC.2009.18
  • Filename
    4752813