Community
cancel
Showing results for 
Search instead for 
Did you mean: 
YangHun_P_
Beginner
63 Views

Intel TSX with STAMP benchmark

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
63 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