STM forward progress guarantee

STM forward progress guarantee

Imagen de Chris M. Thomasson

Is your STM compiler only obstruction-free, or lock-free? If not, are you using typical version counting and locks? Do you have to depend on a contention manager? How do you handle read-only transactions? Finally, how do you avoid the possibility of live-lock?

Thank you.

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

Is your STM compiler only obstruction-free, or lock-free?

The implementation uses locks.

If not, are you using typical version counting and locks?

We use a number of different STM algorithms, but are not publishing the details at present. If I knew your real name I might be more inclined to discuss details (possibly offline).

Do you have to depend on a contention manager?

We have a contention manager (or many contention managers...)

How do you handle read-only transactions?

You need to expand the question, I don't see a specific issue with read-ony transactions.

Finally, how do you avoid the possibility of live-lock?

The level zero answer is that we abort one of the transactions and retry. The deeper answer (how we avoid getting back to the same livelock even after aborting and retrying) is not something I'm going to discuss at the moment.

HTH even if I am weaselling out of the hard questions :-)

Inicie sesión para dejar un comentario.