Intel® Parallel Studio

Using Intel® Inspector XE 2011 to Find Data Races in Multithreaded Code

Intel Inspector XE 2011 automatically finds memory errors, deadlocks and other conditions that could lead to deadlocks, data races, thread . Some specific issues associated with debugging multithreaded applications will be discussed in this article.
  • Entwickler
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Anfänger
  • Intel® Parallel Studio
  • Intel® Parallel Studio XE
  • Intel® Inspector XE
  • Intel® Parallel Inspector
  • critical section
  • data races
  • Learning Lab
  • OpenMP*
  • Parallel Computing
  • Threading
  • Loop Modifications to Enhance Data-Parallel Performance

    When confronted with nested loops, the granularity of the computations that are assigned to threads will directly affect performance. Loop transformations such as splitting and merging nested loops can make parallelization easier and more productive.
  • Entwickler
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Server
  • Fortgeschrittene
  • Intel® C++-Compiler
  • Intel® Fortran Compiler
  • Intel® Parallel Composer
  • Intel® Parallel Studio
  • Intel® Parallel Studio XE
  • Optimierung
  • Parallel Computing
  • Granularity and Parallel Performance

    One key to attaining good parallel performance is choosing the right granularity for the application. Granularity is the amount of real work in the parallel task. If granularity is too fine, then performance can suffer from communication overhead.
  • Entwickler
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Server
  • Fortgeschrittene
  • Intel® C++-Compiler
  • Intel® Fortran Compiler
  • Intel® Parallel Composer
  • Intel® Parallel Studio
  • Intel® Parallel Studio XE
  • Parallel Computing
  • Avoiding Heap Contention Among Threads

    Avoiding Heap Contention Among Threads (PDF 256KB)

    Abstract

    Allocating memory from the system heap can be an expensive operation due to a lock used by system runtime libraries to synchronize access to the heap. Contention on this lock can limit the performance benefits from multithreading. To solve this problem, apply an allocation strategy that avoids using shared locks, or use third party heap managers.

  • Entwickler
  • Microsoft Windows* 8.x
  • Server
  • Fortgeschrittene
  • Intel® Parallel Studio
  • Intel® Parallel Amplifier
  • synchronization
  • heap contention
  • dynamic memory allocation
  • lock contention
  • stack allocation
  • Parallel Computing
  • Threading
  • Intel® Parallel Studio abonnieren