Intel® Transactional Synchronization Extensions

Using Intel® SDE's chip-check feature

Intel® SDE includes a software validation mechanism to restrict executed instructions to a particular microprocessor. This is intended to be a helpful diagnostic tool for use when deploying new software. Use chip check when you want to make sure that your program is not using instruction features that are not present on a specific microarchitecture implementation.

In the output of "sde -long-help" there is a section describing the controls for this feature:

  • Entwickler
  • Apple OS X*
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Microsoft Windows* 8.x
  • Intel SDE
  • Intel® Advanced Vector Extensions
  • Intel® Memory Protection Extensions
  • Intel® Streaming SIMD Extensions
  • Intel® Transactional Synchronization Extensions
  • Аппаратная транзакционная память. Обзор решений. Часть 4. Заключение

    После двадцати лет теоретических исследований и экспериментальных решений поддержка транзакционной памяти наконец-то нашла своё место в процессорах. При этом каждый вендор подошёл к проблеме обеспечения HTM по-своему, и не последнюю роль при этом сыграла необходимость совместимости с уже существующей кодовой базой, а также особенности архитектур процессоров. Разработчики ПО теперь в роли догоняющих — необходимо научиться писать параллельные приложения, использующие транзакции. Более того, необходимо научить использовать столь мощный инструмент подрастающее поколение студентов!

    Аппаратная транзакционная память. Обзор решений. Часть 3. Доступные решения

    В этой части будет описаны четыре расширения наборов инструкций для трёх архитектур центральных процессоров, с 2012 года предлагаемых двумя компаниями — Intel и IBM — в своей продукции.

    Аппаратная транзакционная память. Обзор решений. Часть 2. Несостоявшиеся проекты

    В этой части рассказ пойдёт о двух реализациях HTM, по разным причинам не нашедших воплощения в коммерчески доступной аппаратуре — Sun Rock и AMD ASF.

    Аппаратная транзакционная память. Обзор решений. Часть 1. Введение

    В этом цикле статей я расскажу об известных мне аппаратных реализациях аппаратной транзакционной памяти у различных вендоров, как уже доступных на рынке, так и о нескольких несостоявшихся или отложенных проектах, дальнейшая судьба которых неизвестна.

    Fun with Intel® Transactional Synchronization Extensions

    By now, many of you have heard of Intel® Transactional Synchronization Extensions (Intel® TSX). If you have not, I encourage you to check out this page (http://www.intel.com/software/tsx) before you read further. In a nutshell, Intel TSX provides transactional memory support in hardware, making the lives of developers who need to write synchronization codes for concurrent and parallel applications easier.

    TSX fallback paths

    The need for fallback paths

    Often programmers starting with Intel transactional Synchronization Extensions (TSX) don't fully appreciate that TSX transactions are best effort and always need a fallback path. So you cannot just use _xbegin() as a "super CMPXCHG". TSX always needs fallback code that guarantees progress without using transactions, otherwise the code may fail to make progress.  Just putting a retry loop around the transaction is not enough.

    Monitoring Intel® Transactional Synchronization Extensions with Intel® PCM

    After applying a new technology (a new processor, a hardware accelerator, a new instruction, etc) besides measuring the immediate performance delta one requires a method to verify that this technology has been applied correctly and efficiently. Intel® Transactional Synchronization Extensions (Intel® TSX - instructions for speculative execution of critical sections protected by locks) are not an exception here.

    Intel® Transactional Synchronization Extensions abonnieren