Preprint

Exploiting under-utilized cores with deferred methods

  • Ansaloni, Danilo Facoltà di scienze informatiche, Università della Svizzera italiana, Svizzera
  • Binder, Walter Facoltà di scienze informatiche, Università della Svizzera italiana, Svizzera
  • Heydarnoori, Abbas Facoltà di scienze informatiche, Università della Svizzera italiana, Svizzera
  • Chen, Lydia Y. IBM Zurich Research Laboratory, Zurich, Switzerland
Show more…
    2010

18 p.

English Effective parallelization of fine-grained tasks, such as in dynamic program analysis, is challenging because thread communication overheads may outweigh the benefits of parallelism. In this paper, we address this issue with deferred methods, a novel Java framework that aggregates invocations of analysis methods in thread-local buffers and processes them altogether when a buffer is full. The framework supports pluggable buffer processing strategies. We present an adaptive strategy that combines synchronous buffer processing (by the thread that has filled the buffer) and asynchronous buffer processing (using a thread pool). This strategy adapts at runtime to the CPU utilization of the workload and exploits under-utilized cores when possible. As case studies, we consider two dynamic program analyses, a profiler and a data race detector, which we apply to standard benchmarks. A thorough performance evaluation confirms that our framework together with the adaptive buffer processing strategy yields an average speedup of factor 2.2–2.7 for our case studies on two different quad-core machines.
Language
  • English
Classification
Computer science
License
License undefined
Identifiers
  • RERO DOC 22096
Persistent URL
https://susi.usi.ch/usi/documents/318191
Statistics

Document views: 8 File downloads:
  • ITR1007.pdf: 2