Use Synchronization Routines Provided by the Threading API Rather than Hand-Coded Synchronization

Application programmers sometimes write hand-coded synchronization routines rather than using constructs provided by a threading API in order to reduce synchronization overhead or provide different functionality than existing constructs offer.
  • 服务器
  • OpenMP*
  • Hyper-Threading
  • synchronization
  • Pthreads
  • Win32 threads
  • spin-wait
  • 并行计算
  • 线程
  • Choosing Appropriate Synchronization Primitives to Minimize Overhead

    Currently, there are a number of synchronization mechanisms available, and it is left to the application developer to choose an appropriate one to minimize overall synchronization overhead.
  • 开发人员
  • 服务器
  • atomic operations
  • synchronization
  • Win32 threads
  • system overhead
  • mutual exclusion
  • 并行计算
  • 线程
  • Avoiding Heap Contention Among Threads

    Avoiding Heap Contention Among Threads (PDF 256KB)


    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.

  • 开发人员
  • Microsoft Windows* 8.x
  • 服务器
  • 中级
  • 英特尔® VTune™ 放大器
  • 英特尔® Parallel Studio XE Composer Edition
  • synchronization
  • heap contention
  • dynamic memory allocation
  • lock contention
  • stack allocation
  • 并行计算
  • 线程
  • Courseware - Parallel Algorithms

    • PRAM model
    • Exclusive versus concurrent reads and writes
    • Pointer jumping
    • Brent’s theorem and work efficiency

    Introduction to Parallel Algorithms Design and Techniques

    Material Type:

    Article / White paper

    ISN Logo

  • 教授
  • 学生
  • Algorithms and Complexity
  • Parallel Algorithms
  • Parallel algorithm
  • Decomposition
  • synchronization
  • load balancing
  • granularity
  • matrix multiplication
  • sorting
  • Thread Management
  • cache efficiency
  • processor affinity
  • 并行计算
  • 线程
  • Parallel Programming Talk #99 "Taming the Wild Order of Synchronizations" with YY Zhou

    It’s Tuesday, January 25, 2011 and this is Parallel Programming Talk

    The News:

      • Casual Connect (Casual Games industry)- Feb 10 – 12 Congress Center, Hamburg, Germany - for casual game developers… Learn more:

    Win32 Functions to Create, Suspend, and Terminate Threads

    Apply procedures provided by the Microsoft Win32 API to create, suspend, resume, and terminate threads. Context switching in a multithreaded application is cheaper than context switching of multiple processes, because switching processes carries a lot more overhead than switching threads.
  • 开发人员
  • Microsoft Windows* (XP, Vista, 7)
  • synchronization
  • Multi-thread apps for Multi-Core
  • How to thread?
  • 并行计算
  • 订阅 synchronization