• DocumentCode
    555285
  • Title

    LIME: a framework for debugging load imbalance in multi-threaded execution

  • Author

    Oh, Jungju ; Hughes, Christopher J. ; Venkataramani, Guru ; Prvulovic, Milos

  • fYear
    2011
  • fDate
    21-28 May 2011
  • Firstpage
    201
  • Lastpage
    210
  • Abstract
    With the ubiquity of multi-core processors, software must make effective use of multiple cores to obtain good performance on modern hardware. One of the biggest roadblocks to this is load imbalance, or the uneven distribution of work across cores. We propose LIME, a framework for analyzing parallel programs and reporting the cause of load imbalance in application source code. This framework uses statistical techniques to pinpoint load imbalance problems stemming from both control flow issues (e.g., unequal iteration counts) and interactions between the application and hardware (e.g., unequal cache miss counts). We evaluate LIME on applications from widely used parallel benchmark suites, and show that LIME accurately reports the causes of load imbalance, their nature and origin in the code, and their relative importance.
  • Keywords
    multi-threading; multiprocessing systems; program debugging; statistical analysis; LIME; application source code; control flow issues; load imbalance debugging; multicore processor ubiquity; multithreaded execution; parallel programs; statistical techniques; Accuracy; Correlation; Debugging; Dynamic scheduling; Hardware; Instruction sets; Regression analysis; load imbalance; parallel section; performance debugging;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering (ICSE), 2011 33rd International Conference on
  • Conference_Location
    Honolulu, HI
  • ISSN
    0270-5257
  • Print_ISBN
    978-1-4503-0445-0
  • Electronic_ISBN
    0270-5257
  • Type

    conf

  • DOI
    10.1145/1985793.1985822
  • Filename
    6032459