Affinity

Привязка потоков (affinity) в Intel® Threading Building Blocks на сопроцессоре Intel® Xeon Phi™

Библиотека Intel® Threading Building Blocks (Intel® TBB) [1] [2] предоставляет высокоуровневые интерфейсы для написания программ, использующих параллельные вычисления. И несмотря на то, что цель этих интерфейсов скрыть от разработчика управление потоками в системе, всё же иногда встречаются задачи, требующие ручного управления. Одна из таких задач - привязка программных потоков к определённым физическим потокам (ядрам) [3].

  • Entwickler
  • Studenten
  • Linux*
  • Business Client
  • Server
  • C/C++
  • Intel® Threading Building Blocks
  • Intel Threading Building Blocks (Intel TBB)
  • Intel Xeon Phi
  • Affinity
  • tbb affinity
  • cache efficiency
  • observer
  • task_scheduler_observer
  • pi
  • тбб
  • аффинити
  • кэш
  • привязка потоков
  • Applying Intel® Threading Building Blocks observers for thread affinity on Intel® Xeon Phi™ coprocessors.

    In spite of the fact that the Intel® Threading Building Blocks (Intel® TBB) library [1] [2] provides high-level task based parallelism intended to hide software thread management, sometimes thread related problems arise. One of these problems is thread affinity [3]. Since thread affinity may help to optimize cache performance [3] [4] and consequently overall performance, this topic cannot be avoided.

    TBB 3.0 and processor affinity

    A week ago I started telling about a couple of new helpful features in the TBB 3.0 Update 4 task scheduler, and we talked about the support for processor groups – an extension of Win32 API available in 64-bit edition of Windows 7. The main purpose of processor groups is to extend Win32 capabilities to allow applications work with more than 64 logical CPUs.

    Affinity abonnieren