• DocumentCode
    2679343
  • Title

    Improving shared cache behavior of multithreaded object-oriented applications in multicores

  • Author

    Kandemir, Mahmut ; Srikantaiah, Shekhar ; Son, Seung Woo

  • Author_Institution
    Pennsylvania State Univ., University Park, PA, USA
  • fYear
    2011
  • fDate
    7-10 Nov. 2011
  • Firstpage
    118
  • Lastpage
    125
  • Abstract
    Understanding shared cache performance when executing multithreaded object-oriented applications and optimizing these applications for multicores have not received much attention. In this paper, we first quantify the intra-thread and inter-thread cache line (block) reuse characteristics of a set of multithreaded C++ programs when executed in shared cache based multicores. Our results show that, as far as shared on-chip caches are concerned, inter-thread cache line (block) reuse distances are much higher than intra-thread cache line reuse distances. We study the impact of these characteristics on the hit/miss behavior of the shared last-level cache on a commercial multicore machine. We then show that, by rearranging accesses to the objects shared across different threads and to the objects stored in nearby memory locations, inter-thread (temporal and spatial) object reuse distances can be reduced, which in turn helps to reduce inter-thread cache line reuse distances. The results we collected using eight multithreaded applications show that our proposed shared cache-aware code restructuring strategy can reduce misses in the last-level on-chip cache of a commercial multicore machine by 25.4%, on average. These savings in cache misses translate in turn to average execution time improvement of 11.9%.
  • Keywords
    C++ language; cache storage; multi-threading; multiprocessing systems; cache-aware code restructuring strategy; commercial multicore machine; hit-miss behavior; interthread cache line reuse characteristics; intrathread cache line reuse characteristics; multithreaded C++ programs; multithreaded object-oriented applications; shared cache based multicores; shared cache behavior; Instruction sets; Multicore processing; Processor scheduling; Schedules; Sockets; System-on-a-chip;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computer-Aided Design (ICCAD), 2011 IEEE/ACM International Conference on
  • Conference_Location
    San Jose, CA
  • ISSN
    1092-3152
  • Print_ISBN
    978-1-4577-1399-6
  • Electronic_ISBN
    1092-3152
  • Type

    conf

  • DOI
    10.1109/ICCAD.2011.6105315
  • Filename
    6105315