Intel® ISA Extensions
Use hardware-based isolation and memory encryption to provide more code protection in your solutions.

Intel TSX with STAMP benchmark

YangHun_P_
Beginner
170 Views

when running vacation application in stamp benchmark, there are several code defined as TM_RESTART.

First, i think that it would be okay that _xabort will restart the transactions.

But, when the transaction fails to commit, it should goes to fallback path with a lock. In this case how to go back to the _xbegin when transaction should be restarted?

0 Kudos
1 Reply
Roman_D_Intel
Employee
170 Views

Hi,

xabort instruction has a constant 8-bit argument that is passed to the transaction abort handler (see the abort status returned by _xbegin() intrinsic: the upper 8 bits [24:31]). For TM_RESTART you can define a special constant value that can be recognized in your abort handler and handled appropriately (i.e. restart transaction, do not take the fall-back lock).

Thanks,

Roman

Reply