libitm internals, alternatives

libitm internals, alternatives

We would like to compare the performance of icc's STM and other STM mechanisms (such as TinySTM).
Is there a way to use a drop-in STM library instead of icc's libitm? Alternatively, are the calls
to libitm documented somewhere? Has anyone tried doing anything of this sort?

Also, how much of the transaction code is inlined? Running objdump on compiled objects gives
us many added functions named _ITM_*, and data structures called _ITM_LocStruct_pack and _ITM_Loc_pack (which seems to have debugging information).

publicaciones de 3 / 0 nuevos
Último envío
Para obtener más información sobre las optimizaciones del compilador, consulte el aviso sobre la optimización.

lutzky:We would like to compare the performance of icc's STM and other STM mechanisms (such as TinySTM).
Is there a way to use a drop-in STM library instead of icc's libitm?

I am afraid that the ABI we use between the compiler and the runtime is not currently published, so although it's technically trivial (just link against another library ) the information needed to create such a library is not available.

lutzky:Alternatively, are the calls to libitm documented somewhere? Has anyone tried doing anything of this sort?

The ABI itself is specifically designed to allow such experimentation (it can support in-place or buffered update and optimistic or pessimistic readers without requiring re-compilation of the client, so the same benchmark executable could be tried with many different STM runtimes just by choice of the correct dynamic library), however we haven't published the ABI.

lutzky:Also, how much of the transaction code is inlined? Running objdump on compiled objects gives
us many added functions named _ITM_*, and data structures called _ITM_LocStruct_pack and _ITM_Loc_pack (which seems to have debugging information).

None of the transactional runtime is inlined.

As researchers we would love to publish the ABI, but getting approval to open such interfaces is not trivial. We'll certainly take this as a request that we do so.

p.s. A real name and institution would help us to make that case better than a pseudonym...

I've updated my profile details with my name (Ohad Lutzky) and institution (Technion IIT).

Deje un comentario

Por favor inicie sesión para agregar un comentario. ¿No es socio? Únase ya