• DocumentCode
    2241979
  • Title

    SD3: A Scalable Approach to Dynamic Data-Dependence Profiling

  • Author

    Kim, Minjang ; Kim, Hyesoon ; Luk, Chi-Keung

  • Author_Institution
    Sch. of Comput. Sci., Georgia Inst. of Technol., Atlanta, GA, USA
  • fYear
    2010
  • fDate
    4-8 Dec. 2010
  • Firstpage
    535
  • Lastpage
    546
  • Abstract
    As multicore processors are deployed in mainstream computing, the need for software tools to help parallelize programs is increasing dramatically. Data-dependence profiling is an important technique to exploit parallelism in programs. More specifically, manual or automatic parallelization can use the outcomes of data-dependence profiling to guide where to parallelize in a program. However, state-of-the-art data-dependence profiling techniques are not scalable as they suffer from two major issues when profiling large and long-running applications: (1) runtime overhead and (2) memory overhead. Existing data-dependence profilers are either unable to profile large-scale applications or only report very limited information. In this paper, we propose a scalable approach to data-dependence profiling that addresses both runtime and memory overhead in a single framework. Our technique, called SD3, reduces the runtime overhead by parallelizing the dependence profiling step itself. To reduce the memory overhead, we compress memory accesses that exhibit stride patterns and compute data dependences directly in a compressed format. We demonstrate that SD3 reduces the runtime overhead when profiling SPEC 2006 by a factor of 4.1× and 9.7× on eight cores and 32 cores, respectively. For the memory overhead, we successfully profile SPEC 2006 with the reference input, while the previous approaches fail even with the train input. In some cases, we observe more than a 20× improvement in memory consumption and a 16× speedup in profiling time when 32 cores are used.
  • Keywords
    multiprocessing systems; parallel programming; program compilers; program diagnostics; software tools; SD3; SPEC 2006; automatic parallelization; compress memory access; dynamic data dependence profiling; mainstream computing; memory overhead; multicore processor; parallelize program; runtime overhead; scalable approach; software tool; stride pattern; compression; data dependence; parallel programming; parallelization; profiling; program analysis;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Microarchitecture (MICRO), 2010 43rd Annual IEEE/ACM International Symposium on
  • Conference_Location
    Atlanta, GA
  • ISSN
    1072-4451
  • Print_ISBN
    978-1-4244-9071-4
  • Type

    conf

  • DOI
    10.1109/MICRO.2010.49
  • Filename
    5695564