• DocumentCode
    1281899
  • Title

    Characterizing the memory behavior of compiler-parallelized applications

  • Author

    Torrie, Evan ; Martonosi, Margaret ; Tseng, Chau-Wen ; Hall, Mary W.

  • Author_Institution
    Comput. Syst. Lab., Stanford Univ., CA, USA
  • Volume
    7
  • Issue
    12
  • fYear
    1996
  • fDate
    12/1/1996 12:00:00 AM
  • Firstpage
    1224
  • Lastpage
    1237
  • Abstract
    Compiler-parallelized applications are increasing in importance as moderate-scale multiprocessors become common. This paper evaluates how features of advanced memory systems (e.g., longer cache lines) impact memory system behavior for applications amenable to compiler parallelization. Using full-sized input data sets and applications taken from standard benchmark suites, we measure statistics such as speedups, synchronization and load imbalance, causes of cache misses, cache line utilization, data traffic, and memory costs. This exploration allows us to draw several conclusions. First, we find that larger granularity parallelism often correlates with good memory system behavior, good overall performance, and high speedup in these applications. Second, we show that when long (512 byte) cache lines are used, many of these applications suffer from false sharing and low cache line utilization. Third, we identify some of the common artifacts in compiler-parallelized codes that can lead to false sharing or other types of poor memory system performance, and we suggest methods for improving them. Overall, this study offers both an important snapshot of the behavior of applications compiled by state-of-the-art compilers, as well as an increased understanding of the interplay between cache line size, program granularity, and memory performance in moderate-scale multiprocessors
  • Keywords
    cache storage; parallelising compilers; shared memory systems; synchronisation; artifacts; cache line utilization; cache lines; compiler-parallelized applications; data traffic; load imbalance; memory behavior characterisation; memory costs; memory system behavior; multiprocessors; synchronization; Application software; Computer science; Concurrent computing; Delay; Parallel architectures; Parallel processing; Parallel programming; Program processors; Propulsion; Supercomputers;
  • fLanguage
    English
  • Journal_Title
    Parallel and Distributed Systems, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    1045-9219
  • Type

    jour

  • DOI
    10.1109/71.553272
  • Filename
    553272